{"openapi":"3.0.3","info":{"title":"thirdweb Engine","description":"Engine is an open-source, backend server that reads, writes, and deploys contracts at production scale.","version":"1.0.0","license":{"name":"Apache 2.0","url":"http://www.apache.org/licenses/LICENSE-2.0.html"}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"To authenticate server-side requests"}},"schemas":{}},"paths":{"/json":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/openapi.json":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/json/":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/backend-wallet/create":{"post":{"operationId":"create","summary":"Create backend wallet","tags":["Backend Wallet"],"description":"Create a backend wallet.","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"label":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["local"]},{"type":"string","enum":["aws-kms"]},{"type":"string","enum":["gcp-kms"]},{"type":"string","enum":["smart:aws-kms"]},{"type":"string","enum":["smart:gcp-kms"]},{"type":"string","enum":["smart:local"]}]}}},{"type":"object","properties":{"label":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["circle"]},{"type":"string","enum":["smart:circle"]}]},"isTestnet":{"description":"If your engine is configured with a testnet API Key for Circle, you can only create testnet wallets and send testnet transactions. Enable this field for testnet wallets. NOTE: A production API Key cannot be used for testnet transactions, and a testnet API Key cannot be used for production transactions. See: https://developers.circle.com/w3s/sandbox-vs-production","type":"boolean"},"credentialId":{"type":"string"},"walletSetId":{"type":"string"}},"required":["type","credentialId"]}]}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"status":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["local"]},{"type":"string","enum":["aws-kms"]},{"type":"string","enum":["gcp-kms"]},{"type":"string","enum":["smart:aws-kms"]},{"type":"string","enum":["smart:gcp-kms"]},{"type":"string","enum":["smart:local"]},{"type":"string","enum":["circle"]},{"type":"string","enum":["smart:circle"]}]}},"required":["walletAddress","status","type"]}},"required":["result"],"example":{"result":{"walletAddress":"0x....","status":"success","type":"local"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{walletAddress}":{"delete":{"operationId":"removeBackendWallet","summary":"Remove backend wallet","tags":["Backend Wallet"],"description":"Remove an existing backend wallet. NOTE: This is an irreversible action for local wallets. Ensure any funds are transferred out before removing a local wallet.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"walletAddress","required":true,"description":"A contract or wallet address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"status":{"type":"string"}},"required":["status"]}},"required":["result"],"example":{"result":{"status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/import":{"post":{"operationId":"import","summary":"Import backend wallet","tags":["Backend Wallet"],"description":"Import an existing wallet as a backend wallet.","requestBody":{"content":{"application/json":{"schema":{"allOf":[{"type":"object","properties":{"label":{"description":"Optional label for the imported wallet","type":"string"}}},{"anyOf":[{"type":"object","properties":{"awsKmsArn":{"description":"AWS KMS key ARN","examples":["arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"],"type":"string"},"credentials":{"description":"Optional AWS credentials to use for importing the wallet, if not provided, the default AWS credentials will be used (if available).","type":"object","properties":{"awsAccessKeyId":{"description":"AWS Access Key ID","type":"string"},"awsSecretAccessKey":{"description":"AWS Secret Access Key","type":"string"}},"required":["awsAccessKeyId","awsSecretAccessKey"]}},"required":["awsKmsArn"]},{"type":"object","properties":{"gcpKmsKeyId":{"description":"GCP KMS key ID","examples":["12345678-1234-1234-1234-123456789012"],"type":"string"},"gcpKmsKeyVersionId":{"description":"GCP KMS key version ID","examples":["1"],"type":"string"},"credentials":{"description":"Optional GCP credentials to use for importing the wallet, if not provided, the default GCP credentials will be used (if available).","type":"object","properties":{"email":{"description":"GCP service account email","type":"string"},"privateKey":{"description":"GCP service account private key","type":"string"}},"required":["email","privateKey"]}},"required":["gcpKmsKeyId","gcpKmsKeyVersionId"]},{"type":"object","properties":{"privateKey":{"description":"The private key of the wallet to import","type":"string"}},"required":["privateKey"]},{"type":"object","properties":{"mnemonic":{"description":"The mnemonic phrase of the wallet to import","type":"string"}},"required":["mnemonic"]},{"type":"object","properties":{"encryptedJson":{"description":"The encrypted JSON of the wallet to import","type":"string"},"password":{"description":"The password used to encrypt the encrypted JSON","type":"string"}},"required":["encryptedJson","password"]}]}]},"examples":{"example1":{"value":{"privateKey":"0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80"}},"example2":{"value":{"mnemonic":"crouch cabbage puppy sunset fever adjust giggle blanket maze loyal wreck dream"}},"example3":{"value":{"encryptedJson":"","password":"password123"}},"example4":{"value":{"awsKmsArn":"arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"}},"example5":{"value":{"gcpKmsKeyId":"12345678-1234-1234-1234-123456789012","gcpKmsKeyVersionId":"1"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"status":{"type":"string"}},"required":["walletAddress","status"]}},"required":["result"],"example":{"result":{"walletAddress":"0x....","status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/update":{"post":{"operationId":"update","summary":"Update backend wallet","tags":["Backend Wallet"],"description":"Update a backend wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"label":{"type":"string"}},"required":["walletAddress"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"status":{"type":"string"}},"required":["walletAddress","status"]}},"required":["result"],"example":{"result":{"walletAddress":"0x....","status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/{walletAddress}/get-balance":{"get":{"operationId":"getBalance","summary":"Get balance","tags":["Backend Wallet"],"description":"Get the native balance for a backend wallet.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"walletAddress","required":true,"description":"Backend wallet address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["walletAddress","name","symbol","decimals","value","displayValue"]}},"required":["result"],"example":{"result":{"walletAddress":"0x...","name":"ERC20","symbol":"","decimals":"18","value":"0","displayValue":"0.0"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/get-all":{"get":{"operationId":"getAll","summary":"Get all backend wallets","tags":["Backend Wallet"],"description":"Get all backend wallets.","parameters":[{"schema":{"default":"1","minimum":1,"type":"integer"},"example":"1","in":"query","name":"page","required":true,"description":"The page of wallets to get."},{"schema":{"default":"10","minimum":1,"type":"integer"},"example":"10","in":"query","name":"limit","required":true,"description":"The number of wallets to get per page."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"address":{"description":"Wallet Address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"type":{"description":"Wallet Type","type":"string"},"label":{"anyOf":[{"description":"A label for your wallet","type":"string"},{"type":"null"}]},"awsKmsKeyId":{"anyOf":[{"description":"AWS KMS Key ID","type":"string"},{"type":"null"}]},"awsKmsArn":{"anyOf":[{"description":"AWS KMS Key ARN","type":"string"},{"type":"null"}]},"gcpKmsKeyId":{"anyOf":[{"description":"GCP KMS Key ID","type":"string"},{"type":"null"}]},"gcpKmsKeyRingId":{"anyOf":[{"description":"GCP KMS Key Ring ID","type":"string"},{"type":"null"}]},"gcpKmsLocationId":{"anyOf":[{"description":"GCP KMS Location ID","type":"string"},{"type":"null"}]},"gcpKmsKeyVersionId":{"anyOf":[{"description":"GCP KMS Key Version ID","type":"string"},{"type":"null"}]},"gcpKmsResourcePath":{"anyOf":[{"description":"GCP KMS Resource Path","type":"string"},{"type":"null"}]}},"required":["address","type","label","awsKmsKeyId","awsKmsArn","gcpKmsKeyId","gcpKmsKeyRingId","gcpKmsLocationId","gcpKmsKeyVersionId","gcpKmsResourcePath"]}}},"required":["result"],"example":{"result":[{"address":"0xe201a491a204e4a78e60033ae8ed39036b55bacb","type":"local","label":"my-wallet","awsKmsKeyId":null,"awsKmsArn":null,"gcpKmsKeyId":null,"gcpKmsKeyRingId":null,"gcpKmsLocationId":null,"gcpKmsKeyVersionId":null,"gcpKmsResourcePath":null}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/transfer":{"post":{"operationId":"transfer","summary":"Transfer tokens","tags":["Backend Wallet"],"description":"Transfer native currency or ERC20 tokens to another wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"The recipient wallet address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"currencyAddress":{"description":"The token address to transfer. Omit to transfer the chain's native currency (e.g. ETH on Ethereum).","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x0000000000000000000000000000000000000000"},"amount":{"description":"The amount in ether to transfer. Example: \"0.1\" to send 0.1 ETH.","type":"string","pattern":"^\\d+(\\.\\d+)?$","example":"0.1"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["to","amount"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/withdraw":{"post":{"operationId":"withdraw","summary":"Withdraw funds","tags":["Backend Wallet"],"description":"Withdraw all funds from this wallet to another wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toAddress":{"description":"Address to withdraw all funds to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"}}}},"required":["toAddress"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactionHash":{"description":"A transaction hash","type":"string","pattern":"^0x[a-fA-F0-9]{64}$","example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"},"amount":{"description":"An amount in native token (decimals allowed). Example: \"0.1\"","type":"string","pattern":"^\\d+(\\.\\d+)?$","example":"0.1"}},"required":["transactionHash","amount"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/send-transaction":{"post":{"operationId":"sendTransaction","summary":"Send a transaction","tags":["Backend Wallet"],"description":"Send a transaction with transaction parameters","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"data":{"type":"string","example":"0x..."},"value":{"type":"string","example":"10000000"},"authorizationList":{"type":"array","items":{"type":"object","properties":{"address":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"chainId":{"type":"integer"},"nonce":{"type":"string"},"r":{"type":"string"},"s":{"type":"string"},"yParity":{"type":"number"}},"required":["address","chainId","nonce","r","s","yParity"]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"}}}},"required":["data","value"]},"example":{"toAddress":"0x7a0ce8524bea337f0bee853b68fabde145dac0a0","data":"0x449a52f800000000000000000000000043cae0d7fe86c713530e679ce02574743b2ee9fc0000000000000000000000000000000000000000000000000de0b6b3a7640000","value":"0x00","txOverrides":{"gas":"50000"}}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/send-transaction-batch":{"post":{"operationId":"sendTransactionBatch","summary":"Send a batch of raw transactions","tags":["Backend Wallet"],"description":"Send a batch of raw transactions with transaction parameters","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"toAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"data":{"type":"string","example":"0x..."},"value":{"type":"string","example":"10000000"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["data","value"]}}}}},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueIds":{"type":"array","items":{"type":"string"}}},"required":["queueIds"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/send-transaction-batch-atomic":{"post":{"operationId":"sendTransactionBatchAtomic","summary":"Send a batch of raw transactions atomically","tags":["Backend Wallet"],"description":"Send a batch of raw transactions in a single UserOp. Transactions will be sent in-order and atomically. Can only be used with smart wallets.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"transactions":{"minItems":1,"type":"array","items":{"type":"object","properties":{"toAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"data":{"description":"A valid hex string","type":"string","pattern":"^0x[a-fA-F0-9]*$","example":"0x68656c6c6f20776f726c64"},"value":{"description":"An amount in wei (no decimals). Example: \"50000000000\"","type":"string","pattern":"^\\d+$","example":"50000000000"}},"required":["data","value"]}}},"required":["transactions"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/sign-transaction":{"post":{"operationId":"signTransaction","summary":"Sign a transaction","tags":["Backend Wallet"],"description":"Sign a transaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"transaction":{"type":"object","properties":{"to":{"type":"string"},"nonce":{"type":"string"},"gasLimit":{"type":"string"},"gasPrice":{"type":"string"},"data":{"type":"string"},"value":{"type":"string"},"chainId":{"type":"integer"},"type":{"type":"integer"},"accessList":{},"maxFeePerGas":{"type":"string"},"maxPriorityFeePerGas":{"type":"string"},"ccipReadEnabled":{"type":"boolean"}},"required":["chainId"]}},"required":["transaction"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/sign-message":{"post":{"operationId":"signMessage","summary":"Sign a message","tags":["Backend Wallet"],"description":"Send a message","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"isBytes":{"type":"boolean"},"chainId":{"type":"number"}},"required":["message"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/sign-typed-data":{"post":{"operationId":"signTypedData","summary":"Sign an EIP-712 message","tags":["Backend Wallet"],"description":"Send an EIP-712 message (\"typed data\")","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"domain":{"additionalProperties":true,"type":"object","properties":{}},"types":{"additionalProperties":true,"type":"object","properties":{}},"value":{"additionalProperties":true,"type":"object","properties":{}},"primaryType":{"type":"string"},"chainId":{"type":"number"}},"required":["domain","types","value"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/{walletAddress}/get-all-transactions":{"get":{"operationId":"getTransactionsForBackendWallet","summary":"Get recent transactions","tags":["Backend Wallet"],"description":"Get recent transactions for this backend wallet.","parameters":[{"schema":{"default":1,"minimum":1,"type":"integer"},"example":1,"in":"query","name":"page","required":true,"description":"Specify the page number."},{"schema":{"default":100,"type":"integer"},"example":100,"in":"query","name":"limit","required":true,"description":"Specify the number of results to return per page."},{"schema":{"default":"queued","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["cancelled"]},{"type":"string","enum":["errored"]}]},"in":"query","name":"status","required":true,"description":"The status to query: 'queued', 'mined', 'errored', or 'cancelled'. Default: 'queued'"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"walletAddress","required":true,"description":"Backend wallet address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}],"example":"queued"},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]}}},"required":["transactions"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/{walletAddress}/get-transactions-by-nonce":{"get":{"operationId":"getTransactionsForBackendWalletByNonce","summary":"Get recent transactions by nonce","tags":["Backend Wallet"],"description":"Get recent transactions for this backend wallet, sorted by descending nonce.","parameters":[{"schema":{"minimum":0,"type":"integer"},"example":100,"in":"query","name":"fromNonce","required":true,"description":"The earliest nonce, inclusive."},{"schema":{"minimum":0,"type":"integer"},"example":100,"in":"query","name":"toNonce","required":false,"description":"The latest nonce, inclusive. If omitted, queries up to the latest sent nonce."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"walletAddress","required":true,"description":"Backend wallet address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"nonce":{"type":"integer"},"transaction":{"anyOf":[{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","examples":["queued","sent","mined","errored","cancelled"],"anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}]},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]},{"type":"string"}]}},"required":["nonce","transaction"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/reset-nonces":{"post":{"operationId":"resetNonces","summary":"Reset nonces","tags":["Backend Wallet"],"description":"Reset nonces for all backend wallets. This is for debugging purposes and does not impact held tokens.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"chainId":{"description":"The chain ID to reset nonces for.","type":"number"},"walletAddress":{"description":"The backend wallet address to reset nonces for. Omit to reset all backend wallets.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"syncOnchainNonces":{"description":"Resync nonces to match the onchain transaction count for your backend wallets. (Default: true)","default":true,"type":"boolean"}},"required":["syncOnchainNonces"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"status":{"type":"string"},"count":{"description":"The number of backend wallets processed.","type":"number"}},"required":["status","count"]}},"required":["result"],"example":{"result":{"status":"success","count":1}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/cancel-nonces":{"post":{"operationId":"cancelNonces","summary":"Cancel nonces","tags":["Backend Wallet"],"description":"Cancel all nonces up to the provided nonce. This is useful to unblock a backend wallet that has transactions waiting for nonces to be mined.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toNonce":{"description":"The nonce to cancel up to, inclusive. Example: If the onchain nonce is 10 and 'toNonce' is 15, this request will cancel nonces: 11, 12, 13, 14, 15","type":"number","example":"42"}},"required":["toNonce"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"cancelledNonces":{"type":"array","items":{"type":"number"}}},"required":["cancelledNonces"],"example":{"result":{"cancelledNonces":[11,12,13,14,15]}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/{walletAddress}/get-nonce":{"get":{"operationId":"getNonce","summary":"Get nonce","tags":["Backend Wallet"],"description":"Get the last used nonce for this backend wallet. This value managed by Engine may differ from the onchain value. Use `/backend-wallet/reset-nonces` if this value looks incorrect while idle.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"walletAddress","required":true,"description":"Backend wallet address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"nonce":{"type":"integer"}},"required":["nonce"]}},"required":["result"],"example":{"result":{"nonce":100}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/backend-wallet/{chain}/simulate-transaction":{"post":{"operationId":"simulateTransaction","summary":"Simulate a transaction","tags":["Backend Wallet"],"description":"Simulate a transaction with transaction parameters","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toAddress":{"description":"The contract address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"value":{"description":"The amount of native currency in wei","type":"string","example":"0"},"functionName":{"description":"The function to call on the contract","type":"string"},"args":{"description":"The arguments to call for this function","type":"array","items":{"anyOf":[{"description":"String argument","type":"string"},{"description":"Numeric argument","type":"number"},{"description":"Boolean argument","type":"boolean"},{"description":"Array argument","type":"array","items":{}},{"description":"Object argument","type":"object","properties":{}}]}},"data":{"description":"Raw calldata","type":"string"}},"required":["toAddress"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"description":"Simulation Success","type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/wallet-credentials":{"post":{"operationId":"createWalletCredential","summary":"Create wallet credentials","tags":["Wallet Credentials"],"description":"Create a new set of wallet credentials.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string"},"type":{"type":"string","enum":["circle"]},"entitySecret":{"description":"32-byte hex string. Consult https://developers.circle.com/w3s/entity-secret-management to create and register an entity secret.","pattern":"^[0-9a-fA-F]{64}$","type":"string"},"isDefault":{"description":"Whether this credential should be set as the default for its type. Only one credential can be default per type.","default":false,"type":"boolean"}},"required":["label","type","entitySecret"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"label":{"type":"string"},"isDefault":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","type","label","isDefault","createdAt","updatedAt"]}},"required":["result"],"example":{"result":{"id":"123e4567-e89b-12d3-a456-426614174000","type":"circle","label":"My Circle Credential","isDefault":false,"createdAt":"2024-01-01T00:00:00.000Z","updatedAt":"2024-01-01T00:00:00.000Z"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"get":{"operationId":"getAllWalletCredentials","summary":"Get all wallet credentials","tags":["Wallet Credentials"],"description":"Get all wallet credentials with pagination.","parameters":[{"schema":{"default":1,"minimum":1,"type":"integer"},"example":1,"in":"query","name":"page","required":true,"description":"Specify the page number."},{"schema":{"default":100,"type":"integer"},"example":100,"in":"query","name":"limit","required":true,"description":"Specify the number of results to return per page."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"isDefault":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","type","label","isDefault","createdAt","updatedAt"]}}},"required":["result"],"example":{"result":[{"id":"123e4567-e89b-12d3-a456-426614174000","type":"circle","label":"My Circle Credential","isDefault":false,"createdAt":"2024-01-01T00:00:00.000Z","updatedAt":"2024-01-01T00:00:00.000Z","deletedAt":null}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/wallet-credentials/{id}":{"get":{"operationId":"getWalletCredential","summary":"Get wallet credential","tags":["Wallet Credentials"],"description":"Get a wallet credential by ID.","parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true,"description":"The ID of the wallet credential to get."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"isDefault":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","type","label","isDefault","createdAt","updatedAt","deletedAt"]}},"required":["result"],"example":{"result":{"id":"123e4567-e89b-12d3-a456-426614174000","type":"circle","label":"My Circle Credential","isDefault":false,"createdAt":"2024-01-01T00:00:00.000Z","updatedAt":"2024-01-01T00:00:00.000Z","deletedAt":null}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"put":{"operationId":"updateWalletCredential","summary":"Update wallet credential","tags":["Wallet Credentials"],"description":"Update a wallet credential's label, default status, and entity secret.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string"},"isDefault":{"description":"Whether this credential should be set as the default for its type. Only one credential can be default per type.","type":"boolean"},"entitySecret":{"description":"32-byte hex string. Consult https://developers.circle.com/w3s/entity-secret-management to create and register an entity secret.","pattern":"^[0-9a-fA-F]{64}$","type":"string"}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"id","required":true,"description":"The ID of the wallet credential to update."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"isDefault":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","type","label","isDefault","createdAt","updatedAt"]}},"required":["result"],"example":{"result":{"id":"123e4567-e89b-12d3-a456-426614174000","type":"circle","label":"My Updated Circle Credential","isDefault":true,"createdAt":"2024-01-01T00:00:00.000Z","updatedAt":"2024-01-01T00:00:00.000Z"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/wallets":{"get":{"operationId":"getWalletsConfiguration","summary":"Get wallets configuration","tags":["Configuration"],"description":"Get wallets configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"type":{"anyOf":[{"type":"string","enum":["local"]},{"type":"string","enum":["aws-kms"]},{"type":"string","enum":["gcp-kms"]},{"type":"string","enum":["smart:aws-kms"]},{"type":"string","enum":["smart:gcp-kms"]},{"type":"string","enum":["smart:local"]},{"type":"string","enum":["circle"]},{"type":"string","enum":["smart:circle"]}]},"awsAccessKeyId":{"anyOf":[{"type":"string"},{"type":"null"}]},"awsRegion":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpApplicationProjectId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpKmsLocationId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpKmsKeyRingId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpApplicationCredentialEmail":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","awsAccessKeyId","awsRegion","gcpApplicationProjectId","gcpKmsLocationId","gcpKmsKeyRingId","gcpApplicationCredentialEmail"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateWalletsConfiguration","summary":"Update wallets configuration","tags":["Configuration"],"description":"Update wallets configuration","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"awsAccessKeyId":{"type":"string"},"awsSecretAccessKey":{"type":"string"},"awsRegion":{"type":"string"}},"required":["awsAccessKeyId","awsSecretAccessKey","awsRegion"]},{"type":"object","properties":{"gcpApplicationProjectId":{"type":"string"},"gcpKmsLocationId":{"type":"string"},"gcpKmsKeyRingId":{"type":"string"},"gcpApplicationCredentialEmail":{"type":"string"},"gcpApplicationCredentialPrivateKey":{"type":"string"}},"required":["gcpApplicationProjectId","gcpKmsLocationId","gcpKmsKeyRingId","gcpApplicationCredentialEmail","gcpApplicationCredentialPrivateKey"]},{"type":"object","properties":{"circleApiKey":{"type":"string"}},"required":["circleApiKey"]}]},"examples":{"example1":{"value":{"type":"local"}},"example2":{"value":{"type":"aws-kms","awsAccessKeyId":"<your-aws-access-key-id>","awsSecretAccessKey":"<your-aws-secret-access-key>","awsRegion":"<your-aws-region>"}},"example3":{"value":{"type":"gcp-kms","gcpApplicationProjectId":"<your-gcp-application-project-id>","gcpKmsLocationId":"<your-gcp-kms-location-id>","gcpKmsKeyRingId":"<your-gcp-key-ring-id>","gcpApplicationCredentialEmail":"<your-gcp-application-credential-email>","gcpApplicationCredentialPrivateKey":"<your-gcp-application-credential-private-key>"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"type":{"anyOf":[{"type":"string","enum":["local"]},{"type":"string","enum":["aws-kms"]},{"type":"string","enum":["gcp-kms"]},{"type":"string","enum":["smart:aws-kms"]},{"type":"string","enum":["smart:gcp-kms"]},{"type":"string","enum":["smart:local"]},{"type":"string","enum":["circle"]},{"type":"string","enum":["smart:circle"]}]},"awsAccessKeyId":{"anyOf":[{"type":"string"},{"type":"null"}]},"awsRegion":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpApplicationProjectId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpKmsLocationId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpKmsKeyRingId":{"anyOf":[{"type":"string"},{"type":"null"}]},"gcpApplicationCredentialEmail":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","awsAccessKeyId","awsRegion","gcpApplicationProjectId","gcpKmsLocationId","gcpKmsKeyRingId","gcpApplicationCredentialEmail"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/chains":{"get":{"operationId":"getChainsConfiguration","summary":"Get chain overrides configuration","tags":["Configuration"],"description":"Get chain overrides configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"name":{"description":"Chain name","type":"string"},"chain":{"description":"Chain name","type":"string"},"rpc":{"type":"array","items":{"description":"RPC URL","type":"string"}},"nativeCurrency":{"type":"object","properties":{"name":{"description":"Native currency name","type":"string"},"symbol":{"description":"Native currency symbol","type":"string"},"decimals":{"description":"Native currency decimals","type":"number"}},"required":["name","symbol","decimals"]},"shortName":{"description":"Chain short name","type":"string"},"chainId":{"description":"Chain ID","type":"integer"},"testnet":{"description":"Is testnet","type":"boolean"},"slug":{"description":"Chain slug","type":"string"}}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateChainsConfiguration","summary":"Update chain overrides configuration","tags":["Configuration"],"description":"Update chain overrides configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"chainOverrides":{"type":"array","items":{"type":"object","properties":{"name":{"description":"Chain name","type":"string"},"chain":{"description":"Chain name","type":"string"},"rpc":{"type":"array","items":{"description":"RPC URL","type":"string"}},"nativeCurrency":{"type":"object","properties":{"name":{"description":"Native currency name","type":"string"},"symbol":{"description":"Native currency symbol","type":"string"},"decimals":{"description":"Native currency decimals","type":"number"}},"required":["name","symbol","decimals"]},"shortName":{"description":"Chain short name","type":"string"},"chainId":{"description":"Chain ID","type":"integer"},"testnet":{"description":"Is testnet","type":"boolean"},"slug":{"description":"Chain slug","type":"string"}}}}},"required":["chainOverrides"]},"example":{"chainOverrides":[{"name":"Localhost","chain":"ETH","rpc":["http://localhost:8545"],"nativeCurrency":{"name":"Ether","symbol":"ETH","decimals":18},"chainId":1337,"slug":"localhost"}]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"name":{"description":"Chain name","type":"string"},"chain":{"description":"Chain name","type":"string"},"rpc":{"type":"array","items":{"description":"RPC URL","type":"string"}},"nativeCurrency":{"type":"object","properties":{"name":{"description":"Native currency name","type":"string"},"symbol":{"description":"Native currency symbol","type":"string"},"decimals":{"description":"Native currency decimals","type":"number"}},"required":["name","symbol","decimals"]},"shortName":{"description":"Chain short name","type":"string"},"chainId":{"description":"Chain ID","type":"integer"},"testnet":{"description":"Is testnet","type":"boolean"},"slug":{"description":"Chain slug","type":"string"}}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/transactions":{"get":{"operationId":"getTransactionConfiguration","summary":"Get transaction processing configuration","tags":["Configuration"],"description":"Get transactions processing configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"minTxsToProcess":{"type":"integer"},"maxTxsToProcess":{"type":"integer"},"minedTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"maxTxsToUpdate":{"type":"integer"},"retryTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"minEllapsedBlocksBeforeRetry":{"type":"integer"},"maxFeePerGasForRetries":{"type":"string"},"maxPriorityFeePerGasForRetries":{"type":"string"},"maxRetriesPerTx":{"type":"integer"},"clearCacheCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["minTxsToProcess","maxTxsToProcess","minedTxListenerCronSchedule","maxTxsToUpdate","retryTxListenerCronSchedule","minEllapsedBlocksBeforeRetry","maxFeePerGasForRetries","maxPriorityFeePerGasForRetries","maxRetriesPerTx","clearCacheCronSchedule"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateTransactionConfiguration","summary":"Update transaction processing configuration","tags":["Configuration"],"description":"Update transaction processing configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"maxTxsToProcess":{"minimum":1,"maximum":10000,"type":"integer"},"maxTxsToUpdate":{"minimum":1,"maximum":10000,"type":"integer"},"minedTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"retryTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"minEllapsedBlocksBeforeRetry":{"minimum":1,"maximum":10000,"type":"integer"},"maxFeePerGasForRetries":{"type":"string"},"maxRetriesPerTx":{"minimum":0,"maximum":10000,"type":"integer"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"minTxsToProcess":{"type":"integer"},"maxTxsToProcess":{"type":"integer"},"minedTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"maxTxsToUpdate":{"type":"integer"},"retryTxListenerCronSchedule":{"anyOf":[{"type":"string"},{"type":"null"}]},"minEllapsedBlocksBeforeRetry":{"type":"integer"},"maxFeePerGasForRetries":{"type":"string"},"maxPriorityFeePerGasForRetries":{"type":"string"},"maxRetriesPerTx":{"type":"integer"}},"required":["minTxsToProcess","maxTxsToProcess","minedTxListenerCronSchedule","maxTxsToUpdate","retryTxListenerCronSchedule","minEllapsedBlocksBeforeRetry","maxFeePerGasForRetries","maxPriorityFeePerGasForRetries","maxRetriesPerTx"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/auth":{"get":{"operationId":"getAuthConfiguration","summary":"Get auth configuration","tags":["Configuration"],"description":"Get auth configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"authDomain":{"type":"string"},"mtlsCertificate":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["authDomain","mtlsCertificate"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateAuthConfiguration","summary":"Update auth configuration","tags":["Configuration"],"description":"Update auth configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"authDomain":{"type":"string"},"mtlsCertificate":{"description":"Engine certificate used for outbound mTLS requests. Must provide the full certificate chain.","type":"string"},"mtlsPrivateKey":{"description":"Engine private key used for outbound mTLS requests.","type":"string"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"authDomain":{"type":"string"},"mtlsCertificate":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["authDomain","mtlsCertificate"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/backend-wallet-balance":{"get":{"operationId":"getBackendWalletBalanceConfiguration","summary":"Get wallet-balance configuration","tags":["Configuration"],"description":"Get wallet-balance configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"minWalletBalance":{"description":"Minimum wallet balance in wei","type":"string"}},"required":["minWalletBalance"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateBackendWalletBalanceConfiguration","summary":"Update backend wallet balance configuration","tags":["Configuration"],"description":"Update backend wallet balance configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"minWalletBalance":{"description":"Minimum wallet balance in wei","type":"string","pattern":"^\\d+$","example":"50000000000"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"minWalletBalance":{"description":"Minimum wallet balance in wei","type":"string"}},"required":["minWalletBalance"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/cors":{"get":{"operationId":"getCorsConfiguration","summary":"Get CORS configuration","tags":["Configuration"],"description":"Get CORS configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"addUrlToCorsConfiguration","summary":"Add a CORS URL","tags":["Configuration"],"description":"Add a URL to allow client-side calls to Engine","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"urlsToAdd":{"type":"array","items":{"description":"Comma separated list of origins that will call Engine","minLength":1,"type":"string"}}},"required":["urlsToAdd"]},"example":{"urlsToAdd":["https://example.com","https://subdomain.example.com"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"delete":{"operationId":"removeUrlToCorsConfiguration","summary":"Remove CORS URLs","tags":["Configuration"],"description":"Remove URLs from CORS configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"urlsToRemove":{"type":"array","items":{"description":"Comma separated list of origins to remove","type":"string"}}},"required":["urlsToRemove"]},"example":{"urlsToRemove":["https://example.com","https://subdomain.example.com"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"put":{"operationId":"setUrlsToCorsConfiguration","summary":"Set CORS URLs","tags":["Configuration"],"description":"Replaces the CORS URLs to allow client-side calls to Engine","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"urls":{"type":"array","items":{"description":"Comma separated list of origins that will call Engine","minLength":1,"type":"string"}}},"required":["urls"]},"example":{"urls":["https://example.com","https://subdomain.example.com"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/cache":{"get":{"operationId":"getCacheConfiguration","summary":"Get cache configuration","tags":["Configuration"],"description":"Get cache configuration","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"clearCacheCronSchedule":{"type":"string"}},"required":["clearCacheCronSchedule"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateCacheConfiguration","summary":"Update cache configuration","tags":["Configuration"],"description":"Update cache configuration","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"clearCacheCronSchedule":{"description":"Cron expression for clearing cache. It should be in the format of 'ss mm hh * * *' where ss is seconds, mm is minutes and hh is hours. Seconds should not be '*' or less than 10","default":"*/30 * * * * *","type":"string"}},"required":["clearCacheCronSchedule"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"clearCacheCronSchedule":{"type":"string"}},"required":["clearCacheCronSchedule"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/contract-subscriptions":{"get":{"operationId":"getContractSubscriptionsConfiguration","summary":"Get Contract Subscriptions configuration","tags":["Configuration"],"description":"Get the configuration for Contract Subscriptions","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"maxBlocksToIndex":{"type":"integer"},"contractSubscriptionsRequeryDelaySeconds":{"type":"string"}},"required":["maxBlocksToIndex","contractSubscriptionsRequeryDelaySeconds"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"post":{"operationId":"updateContractSubscriptionsConfiguration","summary":"Update Contract Subscriptions configuration","tags":["Configuration"],"description":"Update the configuration for Contract Subscriptions","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"maxBlocksToIndex":{"minimum":1,"maximum":100,"type":"integer"},"contractSubscriptionsRequeryDelaySeconds":{"description":"Requery after one or more delays. Use comma-separated positive integers. Example: \"2,10\" means requery after 2s and 10s.","type":"string"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"maxBlocksToIndex":{"type":"integer"},"contractSubscriptionsRequeryDelaySeconds":{"type":"string"}},"required":["maxBlocksToIndex","contractSubscriptionsRequeryDelaySeconds"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/configuration/ip-allowlist":{"get":{"operationId":"getIpAllowlist","summary":"Get Allowed IP Addresses","tags":["Configuration"],"description":"Get the list of allowed IP addresses","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"put":{"operationId":"setIpAllowlist","summary":"Set IP Allowlist","tags":["Configuration"],"description":"Replaces the IP Allowlist array to allow calls to Engine","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"ips":{"description":"Array of IP addresses to allowlist","type":"array","items":{"minLength":7,"description":"IP address as a string","type":"string"}}},"required":["ips"]},"example":{"ips":["8.8.8.8","172.217.255.255"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/webhooks/get-all":{"get":{"operationId":"listWebhooks","summary":"Get all webhooks configured","tags":["Webhooks"],"description":"Get all webhooks configuration data set up on Engine","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer"},"url":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"secret":{"type":"string"},"eventType":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string"}},"required":["id","url","name","eventType","active","createdAt"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/webhooks/create":{"post":{"operationId":"createWebhook","summary":"Create webhook","tags":["Webhooks"],"description":"Create a webhook to call when a specific Engine event occurs.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"description":"Webhook URL. Non-HTTPS URLs are not supported.","type":"string","example":"https://example.com/webhook"},"name":{"minLength":3,"type":"string"},"eventType":{"anyOf":[{"type":"string","enum":["queued_transaction"]},{"type":"string","enum":["sent_transaction"]},{"type":"string","enum":["mined_transaction"]},{"type":"string","enum":["errored_transaction"]},{"type":"string","enum":["cancelled_transaction"]},{"type":"string","enum":["all_transactions"]},{"type":"string","enum":["backend_wallet_balance"]},{"type":"string","enum":["auth"]},{"type":"string","enum":["contract_subscription"]},{"type":"string","enum":["wallet_subscription"]}]}},"required":["url","eventType"]},"example":{"url":"https://example.com/webhook","name":"Notify of transaction updates","secret":"...","eventType":"all_transactions","active":true,"createdAt":"2024-10-02T02:07:27.255Z","id":42}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"integer"},"url":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"secret":{"type":"string"},"eventType":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string"}},"required":["id","url","name","eventType","active","createdAt"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/webhooks/revoke":{"post":{"operationId":"revoke","summary":"Revoke webhook","tags":["Webhooks"],"description":"Revoke a Webhook","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"minimum":0,"type":"integer"}},"required":["id"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/webhooks/event-types":{"get":{"operationId":"getEventTypes","summary":"Get webhooks event types","tags":["Webhooks"],"description":"Get the all the webhooks event types","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"anyOf":[{"type":"string","enum":["queued_transaction"]},{"type":"string","enum":["sent_transaction"]},{"type":"string","enum":["mined_transaction"]},{"type":"string","enum":["errored_transaction"]},{"type":"string","enum":["cancelled_transaction"]},{"type":"string","enum":["all_transactions"]},{"type":"string","enum":["backend_wallet_balance"]},{"type":"string","enum":["auth"]},{"type":"string","enum":["contract_subscription"]},{"type":"string","enum":["wallet_subscription"]}]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/webhooks/{webhookId}/test":{"post":{"operationId":"testWebhook","summary":"Test webhook","tags":["Webhooks"],"description":"Send a test payload to a webhook.","parameters":[{"schema":{"type":"string","pattern":"^\\d+$"},"example":"42","in":"path","name":"webhookId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"ok":{"type":"boolean"},"status":{"type":"number"},"body":{"type":"string"}},"required":["ok","status","body"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/permissions/get-all":{"get":{"operationId":"listAdmins","summary":"Get all permissions","tags":["Permissions"],"description":"Get all users with their corresponding permissions","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"permissions":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["walletAddress","permissions","label"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/permissions/grant":{"post":{"operationId":"grantAdmin","summary":"Grant permissions to user","tags":["Permissions"],"description":"Grant permissions to a user","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"permissions":{"anyOf":[{"type":"string","enum":["ADMIN"]},{"type":"string","enum":["OWNER"]}]},"label":{"type":"string"}},"required":["walletAddress","permissions"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/permissions/revoke":{"post":{"operationId":"revokeAdmin","summary":"Revoke permissions from user","tags":["Permissions"],"description":"Revoke a user's permissions","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}},"required":["walletAddress"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/access-tokens/get-all":{"get":{"operationId":"listAccessTokens","summary":"Get all access tokens","tags":["Access Tokens"],"description":"Get all access tokens","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"tokenMask":{"type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"createdAt":{"type":"string"},"expiresAt":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","tokenMask","walletAddress","createdAt","expiresAt","label"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/access-tokens/create":{"post":{"operationId":"createAccessToken","summary":"Create a new access token","tags":["Access Tokens"],"description":"Create a new access token","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"label":{"type":"string"}}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"tokenMask":{"type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"createdAt":{"type":"string"},"expiresAt":{"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"accessToken":{"type":"string"}},"required":["id","tokenMask","walletAddress","createdAt","expiresAt","label","accessToken"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/access-tokens/revoke":{"post":{"operationId":"revokeAccessTokens","summary":"Revoke an access token","tags":["Access Tokens"],"description":"Revoke an access token","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/access-tokens/update":{"post":{"operationId":"updateAccessTokens","summary":"Update an access token","tags":["Access Tokens"],"description":"Update an access token","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"}},"required":["id"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/keypair/get-all":{"get":{"operationId":"list","summary":"List public keys","tags":["Keypair"],"description":"List the public keys configured with Engine","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"hash":{"description":"A unique identifier for the keypair","type":"string"},"publicKey":{"description":"The public key","type":"string"},"algorithm":{"description":"The keypair algorithm.","type":"string"},"label":{"description":"A description for the keypair.","type":"string"},"createdAt":{"type":"string","format":"date","description":"When the keypair was added"},"updatedAt":{"type":"string","format":"date","description":"When the keypair was updated"}},"required":["hash","publicKey","algorithm","createdAt","updatedAt"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/keypair/add":{"post":{"operationId":"add","summary":"Add public key","tags":["Keypair"],"description":"Add the public key for a keypair","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"publicKey":{"description":"The public key of your keypair beginning with '-----BEGIN PUBLIC KEY-----'.","type":"string"},"algorithm":{"anyOf":[{"type":"string","enum":["RS256"]},{"type":"string","enum":["RS384"]},{"type":"string","enum":["RS512"]},{"type":"string","enum":["ES256"]},{"type":"string","enum":["ES384"]},{"type":"string","enum":["ES512"]},{"type":"string","enum":["PS256"]},{"type":"string","enum":["PS384"]},{"type":"string","enum":["PS512"]}]},"label":{"type":"string"}},"required":["publicKey","algorithm"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"keypair":{"type":"object","properties":{"hash":{"description":"A unique identifier for the keypair","type":"string"},"publicKey":{"description":"The public key","type":"string"},"algorithm":{"description":"The keypair algorithm.","type":"string"},"label":{"description":"A description for the keypair.","type":"string"},"createdAt":{"type":"string","format":"date","description":"When the keypair was added"},"updatedAt":{"type":"string","format":"date","description":"When the keypair was updated"}},"required":["hash","publicKey","algorithm","createdAt","updatedAt"]}},"required":["keypair"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/auth/keypair/remove":{"post":{"operationId":"remove","summary":"Remove public key","tags":["Keypair"],"description":"Remove the public key for a keypair","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"hash":{"type":"string"}},"required":["hash"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/chain/get":{"get":{"operationId":"getChain","summary":"Get chain details","tags":["Chain"],"description":"Get details about a chain.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"query","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"description":"Chain name","type":"string"},"chain":{"description":"Chain name","type":"string"},"rpc":{"type":"array","items":{"description":"RPC URL","type":"string"}},"nativeCurrency":{"type":"object","properties":{"name":{"description":"Native currency name","type":"string"},"symbol":{"description":"Native currency symbol","type":"string"},"decimals":{"description":"Native currency decimals","type":"number"}},"required":["name","symbol","decimals"]},"shortName":{"description":"Chain short name","type":"string"},"chainId":{"description":"Chain ID","type":"integer"},"testnet":{"description":"Is testnet","type":"boolean"},"slug":{"description":"Chain slug","type":"string"}}}},"required":["result"]},"example":{"result":{"name":"Polygon Amoy Testnet","chain":"Polygon","rpc":["https://80002.rpc.thirdweb.com/${THIRDWEB_API_SECRET_KEY}"],"nativeCurrency":{"name":"MATIC","symbol":"MATIC","decimals":18},"shortName":"amoy","chainId":80002,"testnet":true,"slug":"polygon-amoy-testnet"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/chain/get-all":{"get":{"operationId":"listChains","summary":"Get all chain details","tags":["Chain"],"description":"Get details about all supported chains.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"name":{"description":"Chain name","type":"string"},"chain":{"description":"Chain name","type":"string"},"rpc":{"type":"array","items":{"description":"RPC URL","type":"string"}},"nativeCurrency":{"type":"object","properties":{"name":{"description":"Native currency name","type":"string"},"symbol":{"description":"Native currency symbol","type":"string"},"decimals":{"description":"Native currency decimals","type":"number"}},"required":["name","symbol","decimals"]},"shortName":{"description":"Chain short name","type":"string"},"chainId":{"description":"Chain ID","type":"integer"},"testnet":{"description":"Is testnet","type":"boolean"},"slug":{"description":"Chain slug","type":"string"}}}}},"required":["result"]},"example":{"result":[{"name":"Ethereum Mainnet","chain":"ETH","rpc":["https://ethereum.rpc.thirdweb.com/${THIRDWEB_API_SECRET_KEY}"],"nativeCurrency":{"name":"Ether","symbol":"ETH","decimals":18},"shortName":"eth","chainId":1,"testnet":false,"slug":"ethereum"},{"name":"Ropsten","chain":"ETH","rpc":["https://ropsten.rpc.thirdweb.com/${THIRDWEB_API_SECRET_KEY}"],"nativeCurrency":{"name":"Ropsten Ether","symbol":"ETH","decimals":18},"shortName":"rop","chainId":3,"testnet":true,"slug":"ropsten"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/relayer/get-all":{"get":{"operationId":"listRelayers","summary":"Get all meta-transaction relayers","tags":["Relayer"],"description":"Get all meta-transaction relayers","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"chainId":{"type":"string"},"backendWalletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"allowedContracts":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"allowedForwarders":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]}},"required":["id","name","chainId","backendWalletAddress","allowedContracts","allowedForwarders"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/relayer/create":{"post":{"operationId":"createRelayer","summary":"Create a new meta-transaction relayer","tags":["Relayer"],"description":"Create a new meta-transaction relayer","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","type":"string","pattern":"^[\\w-]{1,50}$","example":"80002"},"backendWalletAddress":{"description":"The address of the backend wallet to use for relaying transactions.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"allowedContracts":{"type":"array","items":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}},"allowedForwarders":{"type":"array","items":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}},"required":["chain","backendWalletAddress"]},"example":{"name":"My relayer","chain":"mainnet","backendWalletAddress":"0","allowedContracts":["0x1234...."],"allowedForwarders":["0x1234..."]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"relayerId":{"type":"string"}},"required":["relayerId"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/relayer/revoke":{"post":{"operationId":"revokeRelayer","summary":"Revoke a relayer","tags":["Relayer"],"description":"Revoke a relayer","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/relayer/update":{"post":{"operationId":"updateRelayer","summary":"Update a relayer","tags":["Relayer"],"description":"Update a relayer","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","type":"string","pattern":"^[\\w-]{1,50}$","example":"80002"},"backendWalletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"allowedContracts":{"type":"array","items":{"type":"string"}},"allowedForwarders":{"type":"array","items":{"type":"string"}}},"required":["id"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"success":{"type":"boolean"}},"required":["success"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/relayer/{relayerId}":{"post":{"operationId":"relay","summary":"Relay a meta-transaction","tags":["Relayer"],"description":"Relay an EIP-2771 meta-transaction","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["forward"]},"request":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"value":{"type":"string"},"gas":{"type":"string"},"nonce":{"type":"string"},"data":{"type":"string"},"chainid":{"type":"string"}},"required":["from","to","value","gas","nonce","data"]},"signature":{"type":"string"},"forwarderAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},"required":["type","request","signature","forwarderAddress"]},{"type":"object","properties":{"type":{"type":"string","enum":["permit"]},"request":{"type":"object","properties":{"to":{"type":"string"},"owner":{"type":"string"},"spender":{"type":"string"},"value":{"type":"string"},"nonce":{"type":"string"},"deadline":{"type":"string"}},"required":["to","owner","spender","value","nonce","deadline"]},"signature":{"type":"string"}},"required":["type","request","signature"]},{"type":"object","properties":{"type":{"type":"string","enum":["execute-meta-transaction"]},"request":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"data":{"type":"string"}},"required":["from","to","data"]},"signature":{"type":"string"}},"required":["type","request","signature"]}]}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"relayerId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/read":{"get":{"operationId":"read","summary":"Read from contract","tags":["Contract"],"description":"Call a read function on a contract.","parameters":[{"schema":{"type":"string"},"examples":{"function balanceOf(address owner) view returns (uint256)":{"value":"function balanceOf(address owner) view returns (uint256)"},"balanceOf":{"value":"balanceOf"}},"in":"query","name":"functionName","required":true,"description":"The function to call on the contract. It is highly recommended to provide a full function signature, such as 'function balanceOf(address owner) view returns (uint256)', to avoid ambiguity and to skip ABI resolution"},{"schema":{"type":"string"},"example":"","in":"query","name":"args","required":false,"description":"Arguments for the function. Comma Separated"},{"schema":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"inputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"stateMutability":{"type":"string"}},"required":["type"]}},"in":"query","name":"abi","required":false},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/read-batch":{"post":{"operationId":"readBatch","summary":"Batch read from multiple contracts","tags":["Contract"],"description":"Execute multiple contract read operations in a single call using Multicall","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"calls":{"type":"array","items":{"type":"object","properties":{"contractAddress":{"type":"string"},"functionName":{"type":"string"},"functionAbi":{"type":"string"},"args":{"type":"array","items":{}}},"required":["contractAddress","functionName"]}},"multicallAddress":{"description":"Address of the multicall contract to use. If omitted, multicall3 contract will be used (0xcA11bde05977b3631167028862bE2a173976CA11).","type":"string"}},"required":["calls"]}}},"required":true},"parameters":[{"schema":{"type":"string"},"in":"path","name":"chain","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"results":{"type":"array","items":{"type":"object","properties":{"success":{"type":"boolean"},"result":{}},"required":["success","result"]}}},"required":["results"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/write":{"post":{"operationId":"write","summary":"Write to contract","tags":["Contract"],"description":"Call a write function on a contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"functionName":{"description":"The function to call on the contract. It is highly recommended to provide a full function signature, such as \"function mintTo(address to, uint256 amount)\", to avoid ambiguity and to skip ABI resolution.","type":"string","example":"function mintTo(address to, uint256 amount)"},"args":{"description":"An array of arguments to provide the function. Supports: numbers, strings, arrays, objects. Do not provide: BigNumber, bigint, Date objects","type":"array","items":{},"example":[1730380951,"0x09530565aC1Ce08C3621f5B24Fca6d9a76574620",["a","b","c"]]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}},"abi":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"inputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"stateMutability":{"type":"string"}},"required":["type"]}}},"required":["functionName","args"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}}}}},"/contract/{chain}/{contractAddress}/events/get-all":{"get":{"operationId":"getAllEvents","summary":"Get all events","tags":["Contract-Events"],"description":"Get a list of all blockchain events for this contract.","parameters":[{"schema":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string","enum":["latest"]},{"type":"string","enum":["earliest"]},{"type":"string","enum":["pending"]},{"type":"string","enum":["safe"]},{"type":"string","enum":["finalized"]}],"default":"0"},"in":"query","name":"fromBlock","required":false},{"schema":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string","enum":["latest"]},{"type":"string","enum":["earliest"]},{"type":"string","enum":["pending"]},{"type":"string","enum":["safe"]},{"type":"string","enum":["finalized"]}],"default":"latest"},"in":"query","name":"toBlock","required":false},{"schema":{"default":"desc","anyOf":[{"type":"string","enum":["asc"]},{"type":"string","enum":["desc"]}]},"in":"query","name":"order","required":false},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["result"],"example":{"result":[{"eventName":"Transfer","data":{"from":"0x0000000000000000000000000000000000000000","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","tokenId":{"type":"BigNumber","hex":"0x01"}},"transaction":{"blockNumber":35439713,"blockHash":"0x0413d9c88a664f46b54cd47d66073f47114fa3b0183ca5f713d4567d345de4a1","transactionIndex":6,"removed":false,"address":"0xc8be6265C06aC376876b4F62670adB3c4d72EABA","data":"0x","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000001946267d81fb8adeeea28e6b98bcd446c8248473","0x0000000000000000000000000000000000000000000000000000000000000001"],"transactionHash":"0x6ee82341f1e09511e9502eea45e0ca9e52dd0295a515401834d0d05a5e802da5","logIndex":13,"event":"Transfer","eventSignature":"Transfer(address,address,uint256)"}}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/events/get":{"post":{"operationId":"getEvents","summary":"Get events","tags":["Contract-Events"],"description":"Get a list of specific blockchain events emitted from this contract.","requestBody":{"content":{"application/json":{"schema":{"description":"Specify the from and to block numbers to get events for, defaults to all blocks","type":"object","properties":{"eventName":{"type":"string","example":"Transfer"},"fromBlock":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string","enum":["latest"]},{"type":"string","enum":["earliest"]},{"type":"string","enum":["pending"]},{"type":"string","enum":["safe"]},{"type":"string","enum":["finalized"]}],"default":"0"},"toBlock":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string","enum":["latest"]},{"type":"string","enum":["earliest"]},{"type":"string","enum":["pending"]},{"type":"string","enum":["safe"]},{"type":"string","enum":["finalized"]}],"default":"latest"},"order":{"default":"desc","anyOf":[{"type":"string","enum":["asc"]},{"type":"string","enum":["desc"]}]},"filters":{"type":"object","properties":{}}},"required":["eventName"]}}},"required":true,"description":"Specify the from and to block numbers to get events for, defaults to all blocks"},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","additionalProperties":{}}}},"required":["result"],"example":{"result":{"eventName":"ApprovalForAll","data":{"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","operator":"0x3EcDBF3B911d0e9052b64850693888b008e18373","approved":true},"transaction":{"blockNumber":36010321,"blockHash":"0x2c388fe429215b6c2934746410a52a3416b7a1725cea6885eaf220f05f50a6ec","transactionIndex":19,"removed":false,"address":"0xc8be6265C06aC376876b4F62670adB3c4d72EABA","data":"0x0000000000000000000000000000000000000000000000000000000000000001","topics":["0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31","0x000000000000000000000000e79ee09bd47f4f5381dbbacacff2040f2fbc5803","0x0000000000000000000000003ecdbf3b911d0e9052b64850693888b008e18373"],"transactionHash":"0xa4143253005103e5203554f4e17e90a517591cd2d5e3b3dceabfbfb8fbdca5f9","logIndex":55,"event":"ApprovalForAll","eventSignature":"ApprovalForAll(address,address,bool)"}}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/metadata/abi":{"get":{"operationId":"getAbi","summary":"Get ABI","tags":["Contract-Metadata"],"description":"Get the ABI of a contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"inputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"stateMutability":{"type":"string"}},"required":["type"]}}},"required":["result"],"example":{"result":[{"type":"function","name":"transferFrom","inputs":[{"type":"address","name":"from"},{"type":"address","name":"to"},{"type":"uint256","name":"tokenId"}]},{"type":"event","name":"Transfer","inputs":[{"type":"address","name":"from"},{"type":"address","name":"to"},{"type":"uint256","name":"tokenId"}]}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/metadata/events":{"get":{"operationId":"getContractEvents","summary":"Get events","tags":["Contract-Metadata"],"description":"Get details of all events implemented by a contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"inputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"comment":{"type":"string"}},"required":["name","inputs","outputs"]}}},"required":["result"],"example":{"result":[{"name":"Approval","inputs":[{"type":"address","name":"owner"},{"type":"address","name":"approved"},{"type":"uint256","name":"tokenId"}],"outputs":[]},{"name":"ApprovalForAll","inputs":[{"type":"address","name":"owner"},{"type":"address","name":"operator"},{"type":"bool","name":"approved"}],"outputs":[]}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/metadata/extensions":{"get":{"operationId":"getExtensions","summary":"Get extensions","tags":["Contract-Metadata"],"description":"Get all detected extensions for a contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"Array of detected extension names","type":"array","items":{"type":"string"}}},"required":["result"],"example":{"result":["ERC721","ERC721Burnable","ERC721Supply","ERC721LazyMintable","ERC721Revealable","ERC721ClaimPhasesV2","Royalty","PlatformFee","PrimarySale","Permissions","PermissionsEnumerable","ContractMetadata","Ownable","Gasless"]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/metadata/functions":{"get":{"operationId":"getFunctions","summary":"Get functions","tags":["Contract-Metadata"],"description":"Get details of all functions implemented by the contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"inputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"},"stateMutability":{"type":"string"},"components":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string"},"name":{"type":"string"},"internalType":{"type":"string"}}}}}}},"comment":{"type":"string"},"signature":{"type":"string"},"stateMutability":{"type":"string"}},"required":["name","inputs","outputs","signature","stateMutability"]}}},"required":["result"],"example":{"result":[{"name":"balanceOf","inputs":[{"type":"address","name":"owner"}],"outputs":[{"type":"uint256","name":""}],"comment":"See {IERC721-balanceOf}.","signature":"contract.call(\"balanceOf\", owner: string): Promise<BigNumber>","stateMutability":"view"},{"name":"burn","inputs":[{"type":"uint256","name":"tokenId"}],"outputs":[],"comment":"Burns `tokenId`. See {ERC721-_burn}.","signature":"contract.call(\"burn\", tokenId: BigNumberish): Promise<TransactionResult>","stateMutability":"nonpayable"}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/roles/get":{"get":{"operationId":"getContractRole","summary":"Get wallets for role","tags":["Contract-Roles"],"description":"Get all wallets with a specific role for a contract.","parameters":[{"schema":{"type":"string"},"in":"query","name":"role","required":true,"description":"The role to list wallet members"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]},"example":{"result":["0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/roles/get-all":{"get":{"operationId":"listContractRoles","summary":"Get wallets for all roles","tags":["Contract-Roles"],"description":"Get all wallets in each role for a contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"admin":{"type":"array","items":{"type":"string"}},"transfer":{"type":"array","items":{"type":"string"}},"minter":{"type":"array","items":{"type":"string"}},"pauser":{"type":"array","items":{"type":"string"}},"lister":{"type":"array","items":{"type":"string"}},"asset":{"type":"array","items":{"type":"string"}},"unwrap":{"type":"array","items":{"type":"string"}},"factory":{"type":"array","items":{"type":"string"}},"signer":{"type":"array","items":{"type":"string"}}},"required":["admin","transfer","minter","pauser","lister","asset","unwrap","factory","signer"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/roles/grant":{"post":{"operationId":"grantContractRole","summary":"Grant role","tags":["Contract-Roles"],"description":"Grant a role to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"description":"The role to grant","type":"string"},"address":{"description":"The address to grant the role to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["role","address"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/roles/revoke":{"post":{"operationId":"revokeContractRole","summary":"Revoke role","tags":["Contract-Roles"],"description":"Revoke a role from a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"description":"The role to revoke","type":"string"},"address":{"description":"The address to revoke the role from","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["role","address"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/royalties/get-default-royalty-info":{"get":{"operationId":"getDefaultRoyaltyInfo","summary":"Get royalty details","tags":["Contract-Royalties"],"description":"Gets the royalty recipient and BPS (basis points) of the smart contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"seller_fee_basis_points":{"description":"The royalty fee in BPS (basis points). 100 = 1%.","minimum":0,"maximum":10000,"type":"integer"},"fee_recipient":{"description":"The wallet address that will receive the royalty fees.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}},"required":["seller_fee_basis_points","fee_recipient"]}},"required":["result"]},"example":{"result":{"fee_recipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","seller_fee_basis_points":100}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/royalties/get-token-royalty-info/{tokenId}":{"get":{"operationId":"getTokenRoyaltyInfo","summary":"Get token royalty details","tags":["Contract-Royalties"],"description":"Gets the royalty recipient and BPS (basis points) of a particular token in the contract.","parameters":[{"schema":{"type":"string"},"in":"path","name":"tokenId","required":true},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"seller_fee_basis_points":{"description":"The royalty fee in BPS (basis points). 100 = 1%.","minimum":0,"maximum":10000,"type":"integer"},"fee_recipient":{"description":"The wallet address that will receive the royalty fees.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}},"required":["seller_fee_basis_points","fee_recipient"]}},"required":["result"]},"example":{"result":{"fee_recipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","seller_fee_basis_points":100}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/royalties/set-default-royalty-info":{"post":{"operationId":"setDefaultRoyaltyInfo","summary":"Set royalty details","tags":["Contract-Royalties"],"description":"Set the royalty recipient and fee for the smart contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"seller_fee_basis_points":{"description":"The royalty fee in BPS (basis points). 100 = 1%.","minimum":0,"maximum":10000,"type":"integer"},"fee_recipient":{"description":"The wallet address that will receive the royalty fees.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["seller_fee_basis_points","fee_recipient"]},"example":{"fee_recipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","seller_fee_basis_points":100}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/royalties/set-token-royalty-info":{"post":{"operationId":"setTokenRoyaltyInfo","summary":"Set token royalty details","tags":["Contract-Royalties"],"description":"Set the royalty recipient and fee for a particular token in the contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"seller_fee_basis_points":{"description":"The royalty fee in BPS (basis points). 100 = 1%.","minimum":0,"maximum":10000,"type":"integer"},"fee_recipient":{"description":"The wallet address that will receive the royalty fees.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"token_id":{"description":"The token ID to set the royalty info for.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["seller_fee_basis_points","fee_recipient","token_id"]},"example":{"fee_recipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","seller_fee_basis_points":100,"token_id":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/edition":{"post":{"operationId":"deployEdition","summary":"Deploy Edition","tags":["Deploy"],"description":"Deploy an Edition contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Edition","symbol":"ED","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/edition-drop":{"post":{"operationId":"deployEditionDrop","summary":"Deploy Edition Drop","tags":["Deploy"],"description":"Deploy an Edition Drop contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"merkle":{"type":"object","additionalProperties":{"type":"string"}},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Edition Drop","symbol":"EDD","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/marketplace-v3":{"post":{"operationId":"deployMarketplaceV3","summary":"Deploy Marketplace","tags":["Deploy"],"description":"Deploy a Marketplace contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Marketplace"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/multiwrap":{"post":{"operationId":"deployMultiwrap","summary":"Deploy Multiwrap","tags":["Deploy"],"description":"Deploy a Multiwrap contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"symbol":{"default":"","type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Multiwrap","symbol":"Mw"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/nft-collection":{"post":{"operationId":"deployNFTCollection","summary":"Deploy NFT Collection","tags":["Deploy"],"description":"Deploy an NFT Collection contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My NFT Collection","symbol":"NFT"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/nft-drop":{"post":{"operationId":"deployNFTDrop","summary":"Deploy NFT Drop","tags":["Deploy"],"description":"Deploy an NFT Drop contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"merkle":{"type":"object","additionalProperties":{"type":"string"}},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My NFT Drop","symbol":"NFTD","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/pack":{"post":{"operationId":"deployPack","summary":"Deploy Pack","tags":["Deploy"],"description":"Deploy a Pack contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Pack","symbol":"PACK"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/signature-drop":{"post":{"operationId":"deploySignatureDrop","summary":"Deploy Signature Drop","tags":["Deploy"],"description":"Deploy a Signature Drop contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"seller_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"merkle":{"type":"object","additionalProperties":{"type":"string"}},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","seller_fee_basis_points","fee_recipient","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My NFT Drop","symbol":"NFTD","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/split":{"post":{"operationId":"deploySplit","summary":"Deploy Split","tags":["Deploy"],"description":"Deploy a Split contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"recipients":{"type":"array","items":{"type":"object","properties":{"address":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"sharesBps":{"minimum":0,"maximum":10000,"type":"integer"}},"required":["address","sharesBps"]}},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","recipients","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Split","recipients":[{"recipient":"0x3EcDBF3B911d0e9052b64850693888b008e18373","percent":50},{"recipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","percent":50}]}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/token":{"post":{"operationId":"deployToken","summary":"Deploy Token","tags":["Deploy"],"description":"Deploy a Token contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Token","symbol":"TKN","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/token-drop":{"post":{"operationId":"deployTokenDrop","summary":"Deploy Token Drop","tags":["Deploy"],"description":"Deploy a Token Drop contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"merkle":{"type":"object","additionalProperties":{"type":"string"}},"symbol":{"default":"","type":"string"},"platform_fee_basis_points":{"maximum":10000,"minimum":0,"default":0,"type":"integer"},"platform_fee_recipient":{"default":"0x0000000000000000000000000000000000000000","type":"string"},"primary_sale_recipient":{"type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","symbol","platform_fee_basis_points","platform_fee_recipient","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Signature Drop","symbol":"SIGD","primary_sale_recipient":"<your-wallet-address>"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/prebuilts/vote":{"post":{"operationId":"deployVote","summary":"Deploy Vote","tags":["Deploy"],"description":"Deploy a Vote contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractMetadata":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"external_link":{"type":"string"},"app_uri":{"type":"string"},"defaultAdmin":{"type":"string"},"voting_delay_in_blocks":{"minimum":0,"default":0,"type":"integer"},"voting_period_in_blocks":{"minimum":1,"default":1,"type":"integer"},"voting_token_address":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"voting_quorum_fraction":{"maximum":100,"minimum":0,"default":0,"type":"number"},"proposal_token_threshold":{"default":"0","type":"string"},"trusted_forwarders":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","voting_delay_in_blocks","voting_period_in_blocks","voting_token_address","voting_quorum_fraction","proposal_token_threshold","trusted_forwarders"]},"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["contractMetadata"]},"example":{"contractMetadata":{"name":"My Vote"}}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/{chain}/{publisher}/{contractName}":{"post":{"operationId":"deployPublished","summary":"Deploy published contract","tags":["Deploy"],"description":"Deploy a published contract to the blockchain.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"version":{"description":"Version of the contract to deploy. Defaults to latest.","type":"string"},"forceDirectDeploy":{"type":"boolean"},"saltForProxyDeploy":{"type":"string"},"compilerOptions":{"type":"object","properties":{"compilerType":{"type":"string","anyOf":[{"type":"string","enum":["solc"]},{"type":"string","enum":["string"]}],"enum":["zksolc"]},"compilerVersion":{"type":"string"},"evmVersion":{"type":"string"}},"required":["compilerType"]},"constructorParams":{"description":"Constructor arguments for the deployment.","type":"array","items":{}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["constructorParams"]},"example":{"constructorParams":["0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string"},"example":"deployer.thirdweb.eth","in":"path","name":"publisher","required":true,"description":"Address or ENS of the publisher of the contract"},{"schema":{"type":"string"},"example":"AirdropERC20","in":"path","name":"contractName","required":true,"description":"Name of the published contract to deploy"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"Not all contracts return a deployed address.","type":"string"},"message":{"type":"string"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/deploy/contract-types":{"get":{"operationId":"contractTypes","summary":"Get contract types","tags":["Deploy"],"description":"Get all prebuilt contract types.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/get-all":{"get":{"operationId":"listTransactions","summary":"Get all transactions","tags":["Transaction"],"description":"Get all transaction requests.","parameters":[{"schema":{"default":1,"minimum":1,"type":"integer"},"example":1,"in":"query","name":"page","required":true,"description":"Specify the page number."},{"schema":{"default":100,"type":"integer"},"example":100,"in":"query","name":"limit","required":true,"description":"Specify the number of results to return per page."},{"schema":{"default":"queued","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["cancelled"]},{"type":"string","enum":["errored"]}]},"in":"query","name":"status","required":true,"description":"The status to query: 'queued', 'mined', 'errored', or 'cancelled'. Default: 'queued'"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}],"example":"queued"},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]}},"totalCount":{"type":"integer"}},"required":["transactions","totalCount"]}},"required":["result"],"example":{"result":{"transactions":[{"queueId":"3bb66998-4c99-436c-9753-9dc931214a9b","chainId":"80001","fromAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","toAddress":"0x365b83d67d5539c6583b9c0266a548926bf216f4","data":"0xa9059cbb0000000000000000000000003ecdbf3b911d0e9052b64850693888b008e183730000000000000000000000000000000000000000000000000000000000000064","extension":"none","value":"0x00","nonce":1758,"gasLimit":"39580","gasPrice":"2008818932","maxFeePerGas":"2209700838","maxPriorityFeePerGas":"2008818916","transactionType":2,"transactionHash":"0xf11ca950299c9e72b8d6cac8a03623c6e5a43af1d1b0d45b3fd804c129b573f8","queuedAt":"2023-09-29T18:17:36.929Z","sentAt":"2023-09-29T18:17:40.832Z","minedAt":"2023-09-29T18:17:44.000Z","cancelledAt":null,"deployedContractAddress":null,"deployedContractType":null,"errorMessage":null,"sentAtBlockNumber":40653754,"blockNumber":40653756,"status":"mined","retryCount":0,"retryGasValues":false,"retryMaxFeePerGas":null,"retryMaxPriorityFeePerGas":null,"signerAddress":null,"accountAddress":null,"target":null,"sender":null,"initCode":null,"callData":null,"callGasLimit":null,"verificationGasLimit":null,"preVerificationGas":null,"paymasterAndData":null,"userOpHash":null,"functionName":"transfer","functionArgs":"0x3ecdbf3b911d0e9052b64850693888b008e18373,100"}],"totalCount":1}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/status/{queueId}":{"get":{"operationId":"status","summary":"Get transaction status","tags":["Transaction"],"description":"Get the status for a transaction request.","parameters":[{"schema":{"type":"string"},"example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35","in":"path","name":"queueId","required":true,"description":"Transaction queue ID"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}],"example":"queued"},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]}},"required":["result"],"example":{"result":{"queueId":"a20ed4ce-301d-4251-a7af-86bd88f6c015","walletAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","contractAddress":"0x365b83d67d5539c6583b9c0266a548926bf216f4","chainId":"80001","extension":"non-extension","status":"mined","encodedInputData":"0xa9059cbb0000000000000000000000001946267d81fb8adeeea28e6b98bcd446c824847300000000000000000000000000000000000000000000000000000000000186a0","txType":2,"gasPrice":"1500000017","gasLimit":"46512","maxPriorityFeePerGas":"1500000000","maxFeePerGas":"1500000034","txHash":"0x6de86da898fa4beb13d965c42bf331ad46cfa061cadf75f69791f31c9d8a4f66","submittedTxNonce":698,"createdTimestamp":"2023-08-25T22:42:26.910Z","txProcessedTimestamp":"2023-08-25T22:42:27.302Z","txSubmittedTimestamp":"2023-08-25T22:42:28.743Z","deployedContractAddress":"","contractType":"","errorMessage":"","txMinedTimestamp":"2023-08-25T22:42:33.000Z","blockNumber":39398545,"onChainTxStatus":1}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/status":{"get":{"operationId":"status","summary":"Get transaction status","tags":["Transaction"],"description":"Get the status for a transaction request.","parameters":[{"schema":{"type":"string"},"example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35","in":"query","name":"queueId","required":true,"description":"Transaction queue ID"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}],"example":"queued"},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]}},"required":["result"],"example":{"result":{"queueId":"a20ed4ce-301d-4251-a7af-86bd88f6c015","walletAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","contractAddress":"0x365b83d67d5539c6583b9c0266a548926bf216f4","chainId":"80001","extension":"non-extension","status":"mined","encodedInputData":"0xa9059cbb0000000000000000000000001946267d81fb8adeeea28e6b98bcd446c824847300000000000000000000000000000000000000000000000000000000000186a0","txType":2,"gasPrice":"1500000017","gasLimit":"46512","maxPriorityFeePerGas":"1500000000","maxFeePerGas":"1500000034","txHash":"0x6de86da898fa4beb13d965c42bf331ad46cfa061cadf75f69791f31c9d8a4f66","submittedTxNonce":698,"createdTimestamp":"2023-08-25T22:42:26.910Z","txProcessedTimestamp":"2023-08-25T22:42:27.302Z","txSubmittedTimestamp":"2023-08-25T22:42:28.743Z","deployedContractAddress":"","contractType":"","errorMessage":"","txMinedTimestamp":"2023-08-25T22:42:33.000Z","blockNumber":39398545,"onChainTxStatus":1}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/get-all-deployed-contracts":{"get":{"operationId":"getAllDeployedContracts","summary":"Get all deployment transactions","tags":["Transaction"],"description":"Get all transaction requests to deploy contracts.","parameters":[{"schema":{"default":1,"minimum":1,"type":"integer"},"example":1,"in":"query","name":"page","required":true,"description":"Specify the page number for pagination."},{"schema":{"default":10,"minimum":1,"type":"integer"},"example":10,"in":"query","name":"limit","required":true,"description":"Specify the number of transactions to return per page."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"queueId":{"anyOf":[{"description":"An identifier for an enqueued blockchain write call","type":"string"},{"type":"null"}]},"status":{"description":"The current state of the transaction.","anyOf":[{"type":"string","enum":["queued"]},{"type":"string","enum":["sent"]},{"type":"string","enum":["mined"]},{"type":"string","enum":["errored"]},{"type":"string","enum":["cancelled"]}],"example":"queued"},"chainId":{"anyOf":[{"description":"The chain ID for the transaction","type":"string"},{"type":"null"}]},"fromAddress":{"anyOf":[{"description":"The backend wallet submitting the transaction","type":"string"},{"type":"null"}]},"toAddress":{"anyOf":[{"description":"The contract address to be called","type":"string"},{"type":"null"}]},"data":{"anyOf":[{"description":"Encoded calldata","type":"string"},{"type":"null"}]},"extension":{"anyOf":[{"description":"The extension detected by thirdweb","type":"string"},{"type":"null"}]},"value":{"anyOf":[{"description":"The amount of native currency to send","type":"string"},{"type":"null"}]},"nonce":{"anyOf":[{"description":"The nonce used by the backend wallet for this transaction","type":"integer"},{"description":"The nonce used by the backend wallet for this transaction","type":"string"},{"type":"null"}]},"gasLimit":{"anyOf":[{"description":"The max gas unit limit","type":"string"},{"type":"null"}]},"gasPrice":{"anyOf":[{"description":"The gas price used","type":"string"},{"type":"null"}]},"maxFeePerGas":{"anyOf":[{"description":"The max fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"maxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas (EIP-1559)","type":"string"},{"type":"null"}]},"transactionType":{"anyOf":[{"description":"The type of transaction","type":"integer"},{"type":"null"}]},"transactionHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"queuedAt":{"anyOf":[{"description":"When the transaction is enqueued","type":"string"},{"type":"null"}]},"sentAt":{"anyOf":[{"description":"When the transaction is submitted to mempool","type":"string"},{"type":"null"}]},"minedAt":{"anyOf":[{"description":"When the transaction is mined onchain","type":"string"},{"type":"null"}]},"cancelledAt":{"anyOf":[{"description":"When the transactino is cancelled","type":"string"},{"type":"null"}]},"deployedContractAddress":{"anyOf":[{"description":"The address for a deployed contract","type":"string"},{"type":"null"}]},"deployedContractType":{"anyOf":[{"description":"The type of a deployed contract","type":"string"},{"type":"null"}]},"errorMessage":{"anyOf":[{"description":"The error that occurred","type":"string"},{"type":"null"}]},"sentAtBlockNumber":{"anyOf":[{"description":"The block number when the transaction is submitted to mempool","type":"integer"},{"type":"null"}]},"blockNumber":{"anyOf":[{"description":"The block number when the transaction is mined","type":"integer"},{"type":"null"}]},"retryCount":{"description":"The number of retry attempts","type":"integer"},"retryGasValues":{"anyOf":[{"description":"Whether to replace gas values on the next retry","type":"boolean"},{"type":"null"}]},"retryMaxFeePerGas":{"anyOf":[{"description":"The max fee per gas to use on retry","type":"string"},{"type":"null"}]},"retryMaxPriorityFeePerGas":{"anyOf":[{"description":"The max priority fee per gas to use on retry","type":"string"},{"type":"null"}]},"signerAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"accountSalt":{"anyOf":[{"type":"string"},{"type":"null"}]},"accountFactoryAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"target":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"sender":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"initCode":{"anyOf":[{"type":"string"},{"type":"null"}]},"callData":{"anyOf":[{"type":"string"},{"type":"null"}]},"callGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"verificationGasLimit":{"anyOf":[{"type":"string"},{"type":"null"}]},"preVerificationGas":{"anyOf":[{"type":"string"},{"type":"null"}]},"paymasterAndData":{"anyOf":[{"type":"string"},{"type":"null"}]},"userOpHash":{"anyOf":[{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},{"type":"null"}]},"functionName":{"anyOf":[{"type":"string"},{"type":"null"}]},"functionArgs":{"anyOf":[{"type":"string"},{"type":"null"}]},"onChainTxStatus":{"anyOf":[{"type":"integer"},{"type":"null"}]},"onchainStatus":{"anyOf":[{"type":"string","enum":["success"]},{"type":"string","enum":["reverted"]},{"type":"null"}]},"effectiveGasPrice":{"anyOf":[{"description":"Effective Gas Price","type":"string"},{"type":"null"}]},"cumulativeGasUsed":{"anyOf":[{"description":"Cumulative Gas Used","type":"string"},{"type":"null"}]},"batchOperations":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"to":{"anyOf":[{"type":"string"},{"type":"null"}]},"data":{"anyOf":[{"type":"string"},{"type":"null"}]},"value":{"type":"string"}},"required":["to","data","value"]}},{"type":"null"}]}},"required":["queueId","status","chainId","fromAddress","toAddress","data","extension","value","nonce","gasLimit","gasPrice","maxFeePerGas","maxPriorityFeePerGas","transactionType","transactionHash","queuedAt","sentAt","minedAt","cancelledAt","deployedContractAddress","deployedContractType","errorMessage","sentAtBlockNumber","blockNumber","retryCount","retryGasValues","retryMaxFeePerGas","retryMaxPriorityFeePerGas","signerAddress","accountAddress","accountSalt","accountFactoryAddress","target","sender","initCode","callData","callGasLimit","verificationGasLimit","preVerificationGas","paymasterAndData","userOpHash","functionName","functionArgs","onChainTxStatus","onchainStatus","effectiveGasPrice","cumulativeGasUsed","batchOperations"]}},"totalCount":{"type":"integer"}},"required":["transactions","totalCount"]}},"required":["result"],"example":{"result":{"transactions":[{"queueId":"8fe7d546-2b8b-465e-b0d2-f1cb5d3d0db3","walletAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","contractAddress":"0x5dbc7b840baa9dabcbe9d2492e45d7244b54a2a0","chainId":"80001","extension":"deploy_prebuilt","status":"submitted","encodedInputData":"0x11b804ab0000000000000000000000004fa15bae96f5816c268f3b473cf67e223644d536000000000000000000000000000000000000000000000000000000000000006033373131393539310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000284e15916340000000000000000000000003ecdbf3b911d0e9052b64850693888b008e183730000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002200000000000000000000000003ecdbf3b911d0e9052b64850693888b008e18373000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034949490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000349494900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000037697066733a2f2f516d5553734471664a4879686375686f504e653650374566336547717864466e78516977526d37585a434234724b2f300000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000c82bbe41f2cf04e3a8efa18f7032bdd7f6d98a810000000000000000000000009399bb24dbb5c4b782c70c2969f58716ebbd6a3b00000000000000000000000000000000000000000000000000000000","txType":2,"gasPrice":"","gasLimit":"925188","maxPriorityFeePerGas":"1500000000","maxFeePerGas":"1500000032","txHash":"0x383b0ef55b76f1848f81c1016580f83faf3cde9f6affd66f789e741e39861f30","submittedTxNonce":111,"createdTimestamp":"2023-06-21T18:05:18.979Z","txSubmittedTimestamp":"2023-06-21T18:05:21.823Z","txProcessedTimestamp":"2023-06-21T18:05:21.823Z","deployedContractAddress":"0x8dE0E40e8a5108Da3e0D65cFc908269fE083DfE7","contractType":"edition"}],"totalCount":1}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/sync-retry":{"post":{"operationId":"syncRetry","summary":"Retry transaction (synchronous)","tags":["Transaction"],"description":"Retry a transaction with updated gas settings. Blocks until the transaction is mined or errors.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"queueId":{"description":"Transaction queue ID","type":"string","example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"},"maxFeePerGas":{"type":"string"},"maxPriorityFeePerGas":{"type":"string"}},"required":["queueId"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactionHash":{"description":"A transaction hash","type":"string","pattern":"^0x[a-fA-F0-9]{64}$","example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"}},"required":["transactionHash"]}},"required":["result"],"example":{"result":{"transactionHash":"0xc3b437073c164c33f95065fb325e9bc419f306cb39ae8b4ca233f33efaa74ead"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/retry-failed":{"post":{"operationId":"retryFailed","summary":"Retry failed transaction","tags":["Transaction"],"description":"Retry a failed transaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"queueId":{"description":"Transaction queue ID","type":"string","example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}},"required":["queueId"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"message":{"type":"string"},"status":{"type":"string"}},"required":["message","status"]}},"required":["result"],"example":{"result":{"message":"Sent transaction to be retried.","status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/cancel":{"post":{"operationId":"cancel","summary":"Cancel transaction","tags":["Transaction"],"description":"Attempt to cancel a transaction by sending a null transaction with a higher gas setting. This transaction is not guaranteed to be cancelled.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"queueId":{"description":"Transaction queue ID","type":"string","example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}},"required":["queueId"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Transaction queue ID","type":"string","example":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"},"status":{"description":"Response status","type":"string","example":"success, error"},"message":{"description":"Response message","type":"string","example":"Transaction cancelled on-chain successfully"},"transactionHash":{"description":"A transaction hash","type":"string","pattern":"^0x[a-fA-F0-9]{64}$","example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"}},"required":["queueId","status","message"]}},"required":["result"],"example":{"result":{"queueId":"a20ed4ce-301d-4251-a7af-86bd88f6c015","status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/{chain}/send-signed-transaction":{"post":{"operationId":"sendRawTransaction","summary":"Send a signed transaction","tags":["Transaction"],"description":"Send a signed transaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"signedTransaction":{"type":"string"}},"required":["signedTransaction"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"transactionHash":{"description":"A transaction hash","type":"string","pattern":"^0x[a-fA-F0-9]{64}$","example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"}},"required":["transactionHash"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/{chain}/send-signed-user-op":{"post":{"operationId":"sendSignedUserOp","summary":"Send a signed user operation","tags":["Transaction"],"description":"Send a signed user operation","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"signedUserOp":{}},"required":["signedUserOp"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"result":{"type":"object","properties":{"userOpHash":{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"}},"required":["userOpHash"]}},"required":["result"]},{"type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"]}},"required":["error"]}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/{chain}/tx-hash/{transactionHash}":{"get":{"operationId":"getTransactionReceipt","summary":"Get transaction receipt","tags":["Transaction"],"description":"Get the transaction receipt from a transaction hash.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431","in":"path","name":"transactionHash","required":true,"description":"Transaction hash"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"object","properties":{"to":{"type":"string"},"from":{"type":"string"},"contractAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"null"}]},"transactionIndex":{"type":"integer"},"root":{"type":"string"},"gasUsed":{"type":"string"},"logsBloom":{"type":"string"},"blockHash":{"type":"string"},"transactionHash":{"description":"A transaction hash","examples":["0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"],"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"logs":{"type":"array","items":{}},"blockNumber":{"type":"integer"},"confirmations":{"type":"integer"},"cumulativeGasUsed":{"type":"string"},"effectiveGasPrice":{"type":"string"},"byzantium":{"type":"boolean"},"type":{"type":"integer"},"status":{"type":"integer"}}},{"type":"null"}]}},"required":["result"],"example":{"result":{"to":"0xd7419703c2D5737646525A8660906eCb612875BD","from":"0x9783Eb2a93A58b24CFeC56F94b30aB6e29fF4b38","contractAddress":null,"transactionIndex":69,"gasUsed":"21000","logsBloom":"0x00000000000200000000000000000000000000000000000000000000000000000000000000000000000000100002000000008000000000000000000000002000000000000000000000000000000000800000000000000000000100000000040000000000000000000000000000000000008000000000000080000000000000000000000000000000000000000000000000000000000000040000000000000000200000000000004000800000000000000000000000000000000000000000004000000000000000000001000000000000000000000000800000108000000000000000000000000000000000000000000000000000000000000000008000100000","blockHash":"0x9be85de9e6a0717ed2e7c9035f7bd748a4b20bc9d6e04a6875fa69311421d971","transactionHash":"0xd9bcba8f5bc4ce5bf4d631b2a0144329c1df3b56ddb9fc64637ed3a4219dd087","logs":[{"transactionIndex":69,"blockNumber":51048531,"transactionHash":"0xd9bcba8f5bc4ce5bf4d631b2a0144329c1df3b56ddb9fc64637ed3a4219dd087","address":"0x0000000000000000000000000000000000001010","topics":["0xe6497e3ee548a3372136af2fcb0696db31fc6cf20260707645068bd3fe97f3c4","0x0000000000000000000000000000000000000000000000000000000000001010","0x0000000000000000000000009783eb2a93a58b24cfec56f94b30ab6e29ff4b38","0x000000000000000000000000d7419703c2d5737646525a8660906ecb612875bd"],"data":"0x00000000000000000000000000000000000000000000000006a4d6a25acff49800000000000000000000000000000000000000000000000006b787e1bb9f06f80000000000000000000000000000000000000000000000051ac78aecb02246820000000000000000000000000000000000000000000000000012b13f60cf1260000000000000000000000000000000000000000000000005216c618f0af23b1a","logIndex":181,"blockHash":"0x9be85de9e6a0717ed2e7c9035f7bd748a4b20bc9d6e04a6875fa69311421d971"},{"transactionIndex":69,"blockNumber":51048531,"transactionHash":"0xd9bcba8f5bc4ce5bf4d631b2a0144329c1df3b56ddb9fc64637ed3a4219dd087","address":"0x0000000000000000000000000000000000001010","topics":["0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63","0x0000000000000000000000000000000000000000000000000000000000001010","0x0000000000000000000000009783eb2a93a58b24cfec56f94b30ab6e29ff4b38","0x000000000000000000000000a8b52f02108aa5f4b675bdcc973760022d7c6020"],"data":"0x00000000000000000000000000000000000000000000000000046a2c9f9fd11800000000000000000000000000000000000000000000000006ce8dc1a70476680000000000000000000000000000000000000000000006df390338516c1391c300000000000000000000000000000000000000000000000006ca23950764a5500000000000000000000000000000000000000000000006df3907a27e0bb362db","logIndex":182,"blockHash":"0x9be85de9e6a0717ed2e7c9035f7bd748a4b20bc9d6e04a6875fa69311421d971"}],"blockNumber":51048531,"confirmations":3232643,"cumulativeGasUsed":"5751865","effectiveGasPrice":"257158085297","status":1,"type":2,"byzantium":true}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/{chain}/userop-hash/{userOpHash}":{"get":{"operationId":"useropHashReceipt","summary":"Get transaction receipt from user-op hash","tags":["Transaction"],"description":"Get the transaction receipt from a user-op hash.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431","in":"path","name":"userOpHash","required":true,"description":"User operation hash"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{}},"required":["result"],"example":{"result":{"userOpHash":"0xa5a579c6fd86c2d8a4d27f5bb22796614d3a31bbccaba8f3019ec001e001b95f","sender":"0x8C6bdb488F664EB98E12cB2671fE2389Cc227D33","nonce":"0x18554d9a95404c5e8ac591f8608a18f80000000000000000","actualGasCost":"0x4b3b147f788710","actualGasUsed":"0x7f550","success":true,"paymaster":"0xe3dc822D77f8cA7ac74c30B0dfFEA9FcDCAAA321","logs":[],"receipt":{"type":"eip1559","status":"success","cumulativeGasUsed":"0x4724c3","logsBloom":"0x010004000800020000000040000000000000040000000000000010000004000000080000001000000212841100000000041080000000000020000240000000000800000022001000400000080000028000040000000000200001000010000000000000000a0000000000000000800800000000004110004080800110282000000000000002000000000000000000000000000200000400000000000000240040200002000000000000400000000002000140000000000000000002200000004000000002000000000021000000000000000000000000800080108020000020000000080000000000000000000000000000000000000000000108000000102000","logs":[],"transactionHash":"0x57465d20d634421008a167cfcfcde94847dba9d6b5d3652b071d4b84e5ce74ff","from":"0x43370996a3aff7b66b3ac7676dd973d01ecec039","to":"0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789","contractAddress":null,"gasUsed":"0x7ff5a","effectiveGasPrice":"0x89b098f46","blockHash":"0xeaeec1eff4095bdcae44d86574cf1bf08b14b26be571b7c2290f32f9f250c103","blockNumber":"0x31de70e","transactionIndex":32,"blobGasUsed":"0x0"}}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/transaction/logs":{"get":{"operationId":"getTransactionLogs","summary":"Get transaction logs","tags":["Transaction"],"description":"Get transaction logs for a mined transaction. A tranasction queue ID or hash must be provided. Set `parseLogs` to parse the event logs.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"query","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string"},"in":"query","name":"queueId","required":false,"description":"The queue ID for a mined transaction."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431","in":"query","name":"transactionHash","required":false,"description":"The transaction hash for a mined transaction."},{"schema":{"type":"boolean"},"in":"query","name":"parseLogs","required":false,"description":"If true, parse the raw logs as events defined in the contract ABI. (Default: true)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"address":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"topics":{"type":"array","items":{"type":"string"}},"data":{"type":"string"},"blockNumber":{"type":"string"},"transactionHash":{"description":"A transaction hash","type":"string","pattern":"^0x[a-fA-F0-9]{64}$","example":"0x1f31b57601a6f90312fd5e57a2924bc8333477de579ee37b197a0681ab438431"},"transactionIndex":{"type":"integer"},"blockHash":{"type":"string"},"logIndex":{"type":"integer"},"removed":{"type":"boolean"},"eventName":{"description":"Event name, only returned when `parseLogs` is true","type":"string"},"args":{"description":"Event arguments. Only returned when `parseLogs` is true","example":{"from":"0xdeadbeeefdeadbeeefdeadbeeefdeadbeeefdead","to":"0xdeadbeeefdeadbeeefdeadbeeefdeadbeeefdead","value":"1000000000000000000n"}}},"required":["address","topics","data","blockNumber","transactionHash","transactionIndex","blockHash","logIndex","removed"]}}},"required":["result"],"example":{"result":[{"eventName":"Transfer","args":{"from":"0x0000000000000000000000000000000000000000","to":"0x71B6267b5b2b0B64EE058C3D27D58e4E14e7327f","value":"1000000000000000000n"},"address":"0x71b6267b5b2b0b64ee058c3d27d58e4e14e7327f","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000071b6267b5b2b0b64ee058c3d27d58e4e14e7327f"],"data":"0x0000000000000000000000000000000000000000000000000de0b6b3a7640000","blockNumber":"79326434","transactionHash":"0x568eb49d738f7c02ebb24aa329efcf10883d951b1e13aa000b0e073d54a0246e","transactionIndex":1,"blockHash":"0xaffbcf3232a76152206de5f6999c549404efc76060a34f8826b90c95993464c3","logIndex":0,"removed":false}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account-factory/get-all-accounts":{"get":{"operationId":"getAllAccounts","summary":"Get all smart accounts","tags":["Account Factory"],"description":"Get all the smart accounts for this account factory.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"The account addresses of all the accounts in this factory","type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account-factory/get-associated-accounts":{"get":{"operationId":"getAssociatedAccounts","summary":"Get associated smart accounts","tags":["Account Factory"],"description":"Get all the smart accounts for this account factory associated with the specific admin wallet.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"signerAddress","required":true,"description":"The address of the signer to get associated accounts from"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"The account addresses of all the accounts with a specific signer in this factory","type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account-factory/is-account-deployed":{"get":{"operationId":"isAccountDeployed","summary":"Check if deployed","tags":["Account Factory"],"description":"Check if a smart account has been deployed to the blockchain.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"adminAddress","required":true,"description":"The address of the admin to check if the account address is deployed"},{"schema":{"type":"string"},"in":"query","name":"extraData","required":false,"description":"Extra data to use in predicting the account address"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"Whether or not the account has been deployed","type":"boolean"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account-factory/predict-account-address":{"get":{"operationId":"predictAccountAddress","summary":"Predict smart account address","tags":["Account Factory"],"description":"Get the counterfactual address of a smart account.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"adminAddress","required":true,"description":"The address of the admin to predict the account address for"},{"schema":{"type":"string"},"in":"query","name":"extraData","required":false,"description":"Extra data (account salt) to add to use in predicting the account address"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"New account counter-factual address.","type":"string"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account-factory/create-account":{"post":{"operationId":"createAccount","summary":"Create smart account","tags":["Account Factory"],"description":"Create a smart account for this account factory.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"adminAddress":{"description":"The admin address to create an account for","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"extraData":{"description":"Extra data to add to use in creating the account address","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["adminAddress"]},"example":{"adminAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"type":"string"},"deployedAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/admins/get-all":{"get":{"operationId":"getAllAdmins","summary":"Get all admins","tags":["Account"],"description":"Get all admins for a smart account.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"The address of the admins on this account","type":"array","items":{"type":"string"}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/sessions/get-all":{"get":{"operationId":"getAllSessions","summary":"Get all session keys","tags":["Account"],"description":"Get all session keys for a smart account.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"signerAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"startDate":{"type":"string"},"expirationDate":{"type":"string"},"nativeTokenLimitPerTransaction":{"type":"string"},"approvedCallTargets":{"type":"array","items":{"type":"string"}}},"required":["signerAddress","startDate","expirationDate","nativeTokenLimitPerTransaction","approvedCallTargets"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/admins/grant":{"post":{"operationId":"grantAccountAdmin","summary":"Grant admin","tags":["Account"],"description":"Grant a smart account's admin permission.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"signerAddress":{"description":"Address to grant admin permissions to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["signerAddress"]},"example":{"signerAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/admins/revoke":{"post":{"operationId":"revokeAccountAdmin","summary":"Revoke admin","tags":["Account"],"description":"Revoke a smart account's admin permission.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"walletAddress":{"description":"Address to revoke admin permissions from","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["walletAddress"]},"example":{"walletAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/sessions/create":{"post":{"operationId":"grantAccountSession","summary":"Create session key","tags":["Account"],"description":"Create a session key for a smart account.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"signerAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"startDate":{"type":"string"},"expirationDate":{"type":"string"},"nativeTokenLimitPerTransaction":{"type":"string"},"approvedCallTargets":{"type":"array","items":{"type":"string"}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["signerAddress","startDate","expirationDate","nativeTokenLimitPerTransaction","approvedCallTargets"]},"example":{"signerAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","startDate":"2021-01-01T00:00:00.000Z","expirationDate":"2022-01-01T00:10:00.000Z","nativeTokenLimitPerTransaction":"1000000000000000000","approvedCallTargets":["0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/sessions/revoke":{"post":{"operationId":"revokeAccountSession","summary":"Revoke session key","tags":["Account"],"description":"Revoke a session key for a smart account.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"walletAddress":{"description":"Address to revoke session from","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["walletAddress"]},"example":{"walletAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/account/sessions/update":{"post":{"operationId":"updateAccountSession","summary":"Update session key","tags":["Account"],"description":"Update a session key for a smart account.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"signerAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"approvedCallTargets":{"type":"array","items":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"}},"startDate":{"type":"string"},"expirationDate":{"type":"string"},"nativeTokenLimitPerTransaction":{"type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["signerAddress","approvedCallTargets"]},"example":{"signerAddress":"0x3ecdbf3b911d0e9052b64850693888b008e18373","approvedCallTargets":["0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/allowance-of":{"get":{"operationId":"erc20-allowanceOf","summary":"Get token allowance","tags":["ERC20"],"description":"Get the allowance of a specific wallet for an ERC-20 contract.","parameters":[{"schema":{"type":"string"},"example":"0x3EcDBF3B911d0e9052b64850693888b008e18373","in":"query","name":"ownerWallet","required":true,"description":"Address of the wallet who owns the funds"},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"spenderWallet","required":true,"description":"Address of the wallet to check token allowance"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"string"},"value":{"description":"Value in wei","type":"string"},"displayValue":{"description":"Value in tokens","type":"string"}},"required":["name","symbol","decimals","value","displayValue"]}},"required":["result"],"example":{"result":{"name":"ERC20","symbol":"","decimals":"18","value":"0","displayValue":"0.0"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/balance-of":{"get":{"operationId":"erc20-balanceOf","summary":"Get token balance","tags":["ERC20"],"description":"Get the balance of a specific wallet address for this ERC-20 contract.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"wallet_address","required":true,"description":"Address of the wallet to check token balance"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"string"},"value":{"description":"Value in wei","type":"string"},"displayValue":{"description":"Value in tokens","type":"string"}},"required":["name","symbol","decimals","value","displayValue"]}},"required":["result"],"example":[{"result":{"name":"ERC20","symbol":"","decimals":"18","value":"7799999999615999974","displayValue":"7.799999999615999974"}}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/get":{"get":{"operationId":"erc20-get","summary":"Get token details","tags":["ERC20"],"description":"Get details for this ERC-20 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"string"}},"required":["name","symbol","decimals"]}},"required":["result"],"example":{"result":{"name":"ERC20","symbol":"","decimals":"18"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/total-supply":{"get":{"operationId":"erc20-totalSupply","summary":"Get total supply","tags":["ERC20"],"description":"Get the total supply in circulation for this ERC-20 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"string"},"value":{"description":"Value in wei","type":"string"},"displayValue":{"description":"Value in tokens","type":"string"}},"required":["name","symbol","decimals","value","displayValue"]}},"required":["result"],"example":[{"result":{"name":"Mumba20","symbol":"","decimals":"18","value":"10000000000000000000","displayValue":"10.0"}}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/signature/generate":{"post":{"operationId":"erc20-signatureGenerate","summary":"Generate signature","tags":["ERC20"],"description":"Generate a signature granting access for another wallet to mint tokens from this ERC-20 contract. This method is typically called by the token contract owner.","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","type":"string"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]},"mintEndTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]}},"required":["to","quantity"],"examples":[{"to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","mintStartTime":"2023-06-07T21:51:33.386Z","mintEndTime":"2023-07-07T21:51:33.386Z"}]},{"allOf":[{"type":"object","properties":{"to":{"type":"string"},"primarySaleRecipient":{"type":"string"},"price":{"type":"string"},"priceInWei":{"type":"string"},"currency":{"type":"string"},"validityStartTimestamp":{"minimum":0,"type":"integer"},"validityEndTimestamp":{"minimum":0,"type":"integer"},"uid":{"type":"string"}},"required":["to","validityStartTimestamp"]},{"anyOf":[{"type":"object","properties":{"quantity":{"type":"string"}},"required":["quantity"]},{"type":"object","properties":{"quantityWei":{"type":"string"}},"required":["quantityWei"]}]}]}]}}}},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":false,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."},{"schema":{"type":"string"},"in":"header","name":"x-thirdweb-sdk-version","required":false,"description":"Override the thirdweb sdk version used. Example: \"5\" for v5 SDK compatibility."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"object","properties":{"payload":{"type":"object","properties":{"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now.","default":1774376998885,"minimum":0,"type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","default":2089736998885,"minimum":0,"type":"integer"}},"required":["to","quantity","primarySaleRecipient","uid","currencyAddress","price","mintStartTime","mintEndTime"],"examples":[{"payload":{"to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3834383133343631326235613434363261623532623264643462336239373634","currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686174693,"mintEndTime":1688766693},"signature":"0xe16697bf7ede4ff4918f0dbc84953b964a84fed70cb3a0b0afb3ee9a55c9ff4d14e029bce8d8c74e71c1de32889c4eff529a9f7d45402455b8d15c7e6993c1c91b"}]},"signature":{"type":"string"}},"required":["payload","signature"]},{"type":"object","properties":{"payload":{"type":"object","properties":{"to":{"type":"string"},"primarySaleRecipient":{"type":"string"},"quantity":{"type":"string"},"price":{"type":"string"},"currency":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["to","primarySaleRecipient","quantity","price","currency","validityStartTimestamp","validityEndTimestamp","uid"]},"signature":{"type":"string"}},"required":["payload","signature"]}]}},"required":["result"],"example":{"result":"1"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/can-claim":{"get":{"operationId":"erc20-canClaim","summary":"Check if tokens are available for claiming","tags":["ERC20"],"description":"Check if tokens are currently available for claiming, optionally specifying if a specific wallet address can claim.","parameters":[{"schema":{"type":"string"},"in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens. This considers all aspects of the active claim phase, including allowlists, previous claims, etc."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/get-active":{"get":{"operationId":"erc20-getActiveClaimConditions","summary":"Retrieve the currently active claim phase, if any.","tags":["ERC20"],"description":"Retrieve the currently active claim phase, if any.","parameters":[{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/get-all":{"get":{"operationId":"erc20-getAllClaimConditions","summary":"Get all the claim phases configured.","tags":["ERC20"],"description":"Get all the claim phases configured on the drop contract.","parameters":[{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/get-claim-ineligibility-reasons":{"get":{"operationId":"erc20-claimConditionsGetClaimIneligibilityReasons","summary":"Get claim ineligibility reasons","tags":["ERC20"],"description":"Get an array of reasons why a specific wallet address is not eligible to claim tokens, if any.","parameters":[{"schema":{"type":"string"},"in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string","enum":["There is not enough supply to claim."]},{"type":"string","enum":["This address is not on the allowlist."]},{"type":"string","enum":["Not enough time since last claim transaction. Please wait."]},{"type":"string","enum":["Claim phase has not started yet."]},{"type":"string","enum":["You have already claimed the token."]},{"type":"string","enum":["Incorrect price or currency."]},{"type":"string","enum":["Cannot claim more than maximum allowed quantity."]},{"type":"string","enum":["There are not enough tokens in the wallet to pay for the claim."]},{"type":"string","enum":["There is no active claim phase at the moment. Please check back in later."]},{"type":"string","enum":["There is no claim condition set."]},{"type":"string","enum":["No wallet connected."]},{"type":"string","enum":["No claim conditions found."]}]}]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/get-claimer-proofs":{"post":{"operationId":"erc20-claimConditionsGetClaimerProofs","summary":"Get claimer proofs","tags":["ERC20"],"description":"Returns allowlist information and merkle proofs for a given wallet address. Returns null if no proof is found for the given wallet address.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"The wallet address to get the merkle proofs for."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"null"},{"type":"object","properties":{"price":{"type":"string"},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"type":"string"},"proof":{"type":"array","items":{"type":"string"}}},"required":["address","maxClaimable","proof"]}]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/set-allowance":{"post":{"operationId":"erc20-setAllowance","summary":"Set allowance","tags":["ERC20"],"description":"Grant a specific wallet address to transfer ERC-20 tokens from the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"spenderAddress":{"description":"Address of the wallet to allow transfers from","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The number of tokens to give as allowance","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["spenderAddress","amount"]},"example":{"spenderAddress":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"100"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/transfer":{"post":{"operationId":"erc20-transfer","summary":"Transfer tokens","tags":["ERC20"],"description":"Transfer ERC-20 tokens from the caller wallet to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toAddress":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The amount of tokens to transfer.","type":"string","pattern":"^\\d+(\\.\\d+)?$","example":"0.1"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["toAddress","amount"]},"example":{"toAddress":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/transfer-from":{"post":{"operationId":"erc20-transferFrom","summary":"Transfer tokens from wallet","tags":["ERC20"],"description":"Transfer ERC-20 tokens from the connected wallet to another wallet. Requires allowance.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fromAddress":{"description":"The sender address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"toAddress":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The amount of tokens to transfer.","type":"string","pattern":"^\\d+(\\.\\d+)?$","example":"0.1"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["fromAddress","toAddress","amount"]},"example":{"fromAddress":"0x....","toAddress":"0x...","amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/burn":{"post":{"operationId":"erc20-burn","summary":"Burn token","tags":["ERC20"],"description":"Burn ERC-20 tokens in the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"amount":{"description":"The amount of tokens you want to burn","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["amount"]},"example":{"amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/burn-from":{"post":{"operationId":"erc20-burnFrom","summary":"Burn token from wallet","tags":["ERC20"],"description":"Burn ERC-20 tokens in a specific wallet. Requires allowance.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"holderAddress":{"description":"Address of the wallet sending the tokens","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The amount of this token you want to burn","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["holderAddress","amount"]},"example":{"holderAddress":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-to":{"post":{"operationId":"erc20-claimTo","summary":"Claim tokens to wallet","tags":["ERC20"],"description":"Claim ERC-20 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"recipient":{"description":"The wallet address to receive the claimed tokens.","type":"string"},"amount":{"description":"The amount of tokens to claim.","type":"string"},"singlePhaseDrop":{"description":"Whether the drop is a single phase drop","type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["recipient","amount"]},"example":{"recipient":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/mint-batch-to":{"post":{"operationId":"erc20-mintBatchTo","summary":"Mint tokens (batch)","tags":["ERC20"],"description":"Mint ERC-20 tokens to multiple wallets in one transaction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"toAddress":{"description":"The address to mint tokens to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The number of tokens to mint to the specific address.","type":"string"}},"required":["toAddress","amount"]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["data"]},"example":{"data":[{"toAddress":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"0.1"},{"toAddress":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","amount":"0.1"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/mint-to":{"post":{"operationId":"erc20-mintTo","summary":"Mint tokens","tags":["ERC20"],"description":"Mint ERC-20 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"toAddress":{"description":"Address of the wallet to mint tokens to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"amount":{"description":"The amount of tokens you want to send","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["toAddress","amount"]},"example":{"toAddress":"0x3EcDBF3B911d0e9052b64850693888b008e18373","amount":"0.1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC20 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/signature/mint":{"post":{"operationId":"erc20-signatureMint","summary":"Signature mint","tags":["ERC20"],"description":"Mint ERC-20 tokens from a generated signature.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","properties":{"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now.","default":1774376998885,"minimum":0,"type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","default":2089736998885,"minimum":0,"type":"integer"}},"required":["to","quantity","primarySaleRecipient","uid","currencyAddress","price","mintStartTime","mintEndTime"],"example":{"payload":{"to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3834383133343631326235613434363261623532623264643462336239373634","currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686174693,"mintEndTime":1688766693},"signature":"0xe16697bf7ede4ff4918f0dbc84953b964a84fed70cb3a0b0afb3ee9a55c9ff4d14e029bce8d8c74e71c1de32889c4eff529a9f7d45402455b8d15c7e6993c1c91b"}},"signature":{"type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["payload","signature"]},"example":{"payload":{},"signature":""}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/set":{"post":{"operationId":"erc20-setClaimConditions","summary":"Overwrite the claim conditions for the drop.","tags":["ERC20"],"description":"Overwrite the claim conditions for the drop. All properties of a phase are optional, with the default being a free, open, unlimited claim, in the native currency, starting immediately.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"claimConditionInputs":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}}},"resetClaimEligibilityForAll":{"type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["claimConditionInputs"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc20/claim-conditions/update":{"post":{"operationId":"erc20-updateClaimConditions","summary":"Update a single claim phase.","tags":["ERC20"],"description":"Update a single claim phase, by providing the index of the claim phase and the new phase configuration. The index is the position of the phase in the list of phases you have made, starting from zero. e.g. if you have two phases, the first phase has an index of 0 and the second phase has an index of 1. All properties of a phase are optional, with the default being a free, open, unlimited claim, in the native currency, starting immediately.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"claimConditionInput":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}},"index":{"description":"Index of the claim condition to update","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["claimConditionInput","index"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/get":{"get":{"operationId":"erc721-get","summary":"Get details","tags":["ERC721"],"description":"Get the details for a token in an ERC-721 contract.","parameters":[{"schema":{"type":"string"},"example":"0","in":"query","name":"tokenId","required":true,"description":"The tokenId of the NFT to retrieve"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}},"required":["result"],"example":[{"result":{"metadata":{"id":"2","uri":"ipfs://QmWDdRcLqVMzFeawADAPr2EFCzdqCzx373VpWK3Kfx25GJ/0","name":"My NFT","description":"My NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0x3EcDBF3B911d0e9052b64850693888b008e18373","type":"ERC721","supply":"1"}}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/get-all":{"get":{"operationId":"erc721-getAll","summary":"Get all details","tags":["ERC721"],"description":"Get details for all tokens in an ERC-721 contract.","parameters":[{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"The start token id for paginated results. Defaults to 0."},{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"The page count for paginated results. Defaults to 100."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}}},"required":["result"],"example":{"result":[{"metadata":{"id":"2","uri":"ipfs://QmWDdRcLqVMzFeawADAPr2EFCzdqCzx373VpWK3Kfx25GJ/0","name":"My NFT","description":"My NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0x3EcDBF3B911d0e9052b64850693888b008e18373","type":"ERC721","supply":"1"}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/get-owned":{"get":{"operationId":"erc721-getOwned","summary":"Get owned tokens","tags":["ERC721"],"description":"Get all tokens in an ERC-721 contract owned by a specific wallet.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"Address of the wallet to get NFTs for"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}}},"required":["result"],"example":[{"result":[{"metadata":{"id":"2","uri":"ipfs://QmWDdRcLqVMzFeawADAPr2EFCzdqCzx373VpWK3Kfx25GJ/0","name":"My NFT","description":"My NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0x3EcDBF3B911d0e9052b64850693888b008e18373","type":"ERC721","supply":"1"}]}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/balance-of":{"get":{"operationId":"erc721-balanceOf","summary":"Get token balance","tags":["ERC721"],"description":"Get the balance of a specific wallet address for this ERC-721 contract.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"Address of the wallet to check NFT balance"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC721 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"example":{"result":"1"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/is-approved":{"get":{"operationId":"erc721-isApproved","summary":"Check if approved transfers","tags":["ERC721"],"description":"Check if the specific wallet has approved transfers from a specific operator wallet.","parameters":[{"schema":{"type":"string"},"example":"0x3EcDBF3B911d0e9052b64850693888b008e18373","in":"query","name":"ownerWallet","required":true,"description":"Address of the wallet who owns the NFT"},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"operator","required":true,"description":"Address of the operator to check approval on"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"example":{"result":false}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/total-count":{"get":{"operationId":"erc721-totalCount","summary":"Get total supply","tags":["ERC721"],"description":"Get the total supply in circulation for this ERC-721 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"example":[{"result":"1"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/total-claimed-supply":{"get":{"operationId":"erc721-totalClaimedSupply","summary":"Get claimed supply","tags":["ERC721"],"description":"Get the claimed supply for this ERC-721 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/total-unclaimed-supply":{"get":{"operationId":"erc721-totalUnclaimedSupply","summary":"Get unclaimed supply","tags":["ERC721"],"description":"Get the unclaimed supply for this ERC-721 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/can-claim":{"get":{"operationId":"erc721-canClaim","summary":"Check if tokens are available for claiming","tags":["ERC721"],"description":"Check if tokens are currently available for claiming, optionally specifying if a specific wallet address can claim.","parameters":[{"schema":{"type":"string"},"in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens. This considers all aspects of the active claim phase, including allowlists, previous claims, etc."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/get-active":{"get":{"operationId":"erc721-getActiveClaimConditions","summary":"Retrieve the currently active claim phase, if any.","tags":["ERC721"],"description":"Retrieve the currently active claim phase, if any.","parameters":[{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/get-all":{"get":{"operationId":"erc721-getAllClaimConditions","summary":"Get all the claim phases configured for the drop.","tags":["ERC721"],"description":"Get all the claim phases configured for the drop.","parameters":[{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/get-claim-ineligibility-reasons":{"get":{"operationId":"erc721-getClaimIneligibilityReasons","summary":"Get claim ineligibility reasons","tags":["ERC721"],"description":"Get an array of reasons why a specific wallet address is not eligible to claim tokens, if any.","parameters":[{"schema":{"type":"string"},"in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string","enum":["There is not enough supply to claim."]},{"type":"string","enum":["This address is not on the allowlist."]},{"type":"string","enum":["Not enough time since last claim transaction. Please wait."]},{"type":"string","enum":["Claim phase has not started yet."]},{"type":"string","enum":["You have already claimed the token."]},{"type":"string","enum":["Incorrect price or currency."]},{"type":"string","enum":["Cannot claim more than maximum allowed quantity."]},{"type":"string","enum":["There are not enough tokens in the wallet to pay for the claim."]},{"type":"string","enum":["There is no active claim phase at the moment. Please check back in later."]},{"type":"string","enum":["There is no claim condition set."]},{"type":"string","enum":["No wallet connected."]},{"type":"string","enum":["No claim conditions found."]}]}]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/get-claimer-proofs":{"get":{"operationId":"erc721-getClaimerProofs","summary":"Get claimer proofs","tags":["ERC721"],"description":"Returns allowlist information and merkle proofs for a given wallet address. Returns null if no proof is found for the given wallet address.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"The wallet address to get the merkle proofs for."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"null"},{"type":"object","properties":{"price":{"type":"string"},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"type":"string"},"proof":{"type":"array","items":{"type":"string"}}},"required":["address","maxClaimable","proof"]}]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/set-approval-for-all":{"post":{"operationId":"erc721-setApprovalForAll","summary":"Set approval for all","tags":["ERC721"],"description":"Approve or remove operator as an operator for the caller. Operators can call transferFrom or safeTransferFrom for any token owned by the caller.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"operator":{"description":"Address of the operator to give approval to","type":"string"},"approved":{"description":"whether to approve or revoke approval","type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["operator","approved"]},"example":{"operator":"0x3EcDBF3B911d0e9052b64850693888b008e18373","approved":"true"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/set-approval-for-token":{"post":{"operationId":"erc721-setApprovalForToken","summary":"Set approval for token","tags":["ERC721"],"description":"Approve an operator for the NFT owner. Operators can call transferFrom or safeTransferFrom for the specific token.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"operator":{"description":"Address of the operator to give approval to","type":"string"},"tokenId":{"description":"the tokenId to give approval for","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["operator","tokenId"]},"example":{"operator":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/transfer":{"post":{"operationId":"erc721-transfer","summary":"Transfer token","tags":["ERC721"],"description":"Transfer an ERC-721 token from the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"type":"string","pattern":"^\\d+$","description":"The token ID to transfer.","example":"42"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["to","tokenId"]},"example":{"to":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/transfer-from":{"post":{"operationId":"erc721-transferFrom","summary":"Transfer token from wallet","tags":["ERC721"],"description":"Transfer an ERC-721 token from the connected wallet to another wallet. Requires allowance.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"from":{"description":"The sender address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"to":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"type":"string","pattern":"^\\d+$","description":"The token ID to transfer.","example":"42"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["from","to","tokenId"]},"example":{"from":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","to":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/mint-to":{"post":{"operationId":"erc721-mintTo","summary":"Mint tokens","tags":["ERC721"],"description":"Mint ERC-721 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to mint the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","metadata"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","metadata":{"name":"My NFT","description":"My NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"}}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/mint-batch-to":{"post":{"operationId":"erc721-mintBatchTo","summary":"Mint tokens (batch)","tags":["ERC721"],"description":"Mint ERC-721 tokens to multiple wallets in one transaction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to mint the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"metadatas":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","metadatas"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","metadata":[{"name":"My NFT #1","description":"My NFT #1 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},{"name":"My NFT #2","description":"My NFT #2 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/burn":{"post":{"operationId":"erc721-burn","summary":"Burn token","tags":["ERC721"],"description":"Burn ERC-721 tokens in the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"The token ID to burn","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId"]},"example":{"tokenId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/lazy-mint":{"post":{"operationId":"erc721-lazyMint","summary":"Lazy mint","tags":["ERC721"],"description":"Lazy mint ERC-721 tokens to be claimed in the future.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"metadatas":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["metadatas"]},"example":{"metadatas":[{"name":"My NFT #1","description":"My NFT #1 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},{"name":"My NFT #2","description":"My NFT #2 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-to":{"post":{"operationId":"erc721-claimTo","summary":"Claim tokens to wallet","tags":["ERC721"],"description":"Claim ERC-721 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to claim the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"quantity":{"description":"Quantity of NFTs to mint","type":"string"},"singlePhaseDrop":{"description":"Whether the drop is a single phase drop","type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","quantity"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","quantity":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/signature/generate":{"post":{"operationId":"erc721-signatureGenerate","summary":"Generate signature","tags":["ERC721"],"description":"Generate a signature granting access for another wallet to mint tokens from this ERC-721 contract. This method is typically called by the token contract owner.","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"quantity":{"examples":["42"],"type":"string","pattern":"^\\d+$","description":"The number of tokens this signature can be used to mint."},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","minimum":0,"maximum":10000,"type":"integer"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]},"mintEndTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]}},"required":["to","metadata"],"examples":[{"to":"0x...","quantity":"1","metadata":{"name":"test tokenII","description":"test token"},"mintStartTime":"2023-06-07T21:51:33.386Z","mintEndTime":"2023-07-07T21:51:33.386Z"}]},{"type":"object","properties":{"metadata":{"anyOf":[{"type":"string"},{"type":"object","properties":{"name":{"description":"The name of the NFT","type":"string"},"description":{"description":"The description of the NFT","type":"string"},"image":{"description":"The image of the NFT","type":"string"},"animation_url":{"description":"The animation url of the NFT","type":"string"},"external_url":{"description":"The external url of the NFT","type":"string"},"background_color":{"description":"The background color of the NFT","type":"string"},"properties":{"description":"(not recommended - use \"attributes\") The properties of the NFT."},"attributes":{"description":"Arbitrary metadata for this item.","type":"array","items":{"type":"object","properties":{"trait_type":{"type":"string"},"value":{"type":"string"}},"required":["trait_type","value"]}}}}]},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"The amount of the \"currency\" token this token costs. Example: \"0.1\"","type":"string"},"priceInWei":{"description":"The amount of the \"currency\" token this token costs in wei. Remember to use the correct decimals amount for the currency. Example: \"100000000000000000\" = 0.1 ETH (18 decimals)","type":"string"},"currency":{"description":"The currency address to pay for minting the tokens. Defaults to the chain's native token.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"primarySaleRecipient":{"description":"If a price is specified, funds will be sent to the \"primarySaleRecipient\" address. Defaults to the \"primarySaleRecipient\" address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the \"royaltyRecipient\" address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the \"royaltyBps\" of the contract.","minimum":0,"maximum":10000,"type":"integer"},"validityStartTimestamp":{"description":"The start time (in Unix seconds) when the signature can be used to mint. Default: now","minimum":0,"type":"integer"},"validityEndTimestamp":{"description":"The end time (in Unix seconds) when the signature can be used to mint. Default: 10 years","minimum":0,"type":"integer"},"uid":{"description":"The uid is a unique identifier hashed in the payload to prevent replay attacks, ensuring it's only used once on-chain.","type":"string"}},"required":["metadata","to"]}]}}}},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC721 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":false,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."},{"schema":{"type":"string"},"in":"header","name":"x-thirdweb-sdk-version","required":false,"description":"Override the thirdweb sdk version used. Example: \"5\" for v5 SDK compatibility."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"object","properties":{"payload":{"type":"object","properties":{"uri":{"type":"string"},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"quantity":{"examples":["42"],"type":"string","pattern":"^\\d+$","description":"The number of tokens this signature can be used to mint."},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now.","type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"integer"}},"required":["uri","to","royaltyRecipient","quantity","royaltyBps","primarySaleRecipient","uid","metadata","currencyAddress","mintStartTime","mintEndTime"],"examples":[{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x0000000000000000000000000000000000000000","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3862386334363135326230303461303939626136653361643131343836373563","metadata":{"name":"test tokenII","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686169938,"mintEndTime":2001529938},"signature":"0xe6f2e29f32f7da65385effa2ed4f39b8d3caf08b025eb0004fd4695b42ee145f2c7afdf2764f0097c9ed5d88b50e97c4c638f91289408fa7d7a0834cd707c4a41b"}]},"signature":{"type":"string"}},"required":["payload","signature"]},{"type":"object","properties":{"payload":{"type":"object","properties":{"uri":{"type":"string"},"to":{"type":"string"},"price":{"type":"string"},"currency":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"primarySaleRecipient":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["uri","to","price","currency","primarySaleRecipient","royaltyRecipient","royaltyBps","validityStartTimestamp","validityEndTimestamp","uid"]},"signature":{"type":"string"}},"required":["payload","signature"]}]}},"required":["result"],"example":{"result":{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3862386334363135326230303461303939626136653361643131343836373563","metadata":{"name":"test token","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686169938,"mintEndTime":2001529938},"signature":"0xe6f2e29f32f7da65385effa2ed4f39b8d3caf08b025eb0004fd4695b42ee145f2c7afdf2764f0097c9ed5d88b50e97c4c638f91289408fa7d7a0834cd707c4a41b"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/signature/mint":{"post":{"operationId":"erc721-signatureMint","summary":"Signature mint","tags":["ERC721"],"description":"Mint ERC-721 tokens from a generated signature.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"anyOf":[{"type":"object","properties":{"uri":{"type":"string"},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"quantity":{"examples":["42"],"type":"string","pattern":"^\\d+$","description":"The number of tokens this signature can be used to mint."},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now.","type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"integer"}},"required":["uri","to","royaltyRecipient","quantity","royaltyBps","primarySaleRecipient","uid","metadata","currencyAddress","mintStartTime","mintEndTime"],"examples":[{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x0000000000000000000000000000000000000000","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3862386334363135326230303461303939626136653361643131343836373563","metadata":{"name":"test tokenII","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686169938,"mintEndTime":2001529938},"signature":"0xe6f2e29f32f7da65385effa2ed4f39b8d3caf08b025eb0004fd4695b42ee145f2c7afdf2764f0097c9ed5d88b50e97c4c638f91289408fa7d7a0834cd707c4a41b"}]},{"type":"object","properties":{"uri":{"type":"string"},"to":{"type":"string"},"price":{"type":"string"},"currency":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"primarySaleRecipient":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["uri","to","price","currency","primarySaleRecipient","royaltyRecipient","royaltyBps","validityStartTimestamp","validityEndTimestamp","uid"]}]},"signature":{"type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["payload","signature"]},"example":{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3862386334363135326230303461303939626136653361643131343836373563","metadata":{"name":"test tokenII","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686169938,"mintEndTime":2001529938},"signature":"0xe6f2e29f32f7da65385effa2ed4f39b8d3caf08b025eb0004fd4695b42ee145f2c7afdf2764f0097c9ed5d88b50e97c4c638f91289408fa7d7a0834cd707c4a41b"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/set":{"post":{"operationId":"erc721-setClaimConditions","summary":"Overwrite the claim conditions for the drop.","tags":["ERC721"],"description":"Overwrite the claim conditions for the drop. All properties of a phase are optional, with the default being a free, open, unlimited claim, in the native currency, starting immediately.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"claimConditionInputs":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}}},"resetClaimEligibilityForAll":{"type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["claimConditionInputs"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/claim-conditions/update":{"post":{"operationId":"erc721-updateClaimConditions","summary":"Update a single claim phase.","tags":["ERC721"],"description":"Update a single claim phase, by providing the index of the claim phase and the new phase configuration. The index is the position of the phase in the list of phases you have made, starting from zero. e.g. if you have two phases, the first phase has an index of 0 and the second phase has an index of 1. All properties of a phase are optional, with the default being a free, open, unlimited claim, in the native currency, starting immediately.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"claimConditionInput":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}},"index":{"description":"Index of the claim condition to update","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["claimConditionInput","index"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/signature/prepare":{"post":{"operationId":"erc721-signaturePrepare","summary":"Prepare signature","tags":["ERC721"],"description":"Prepares a payload for a wallet to generate a signature.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"metadata":{"anyOf":[{"type":"string"},{"type":"object","properties":{"name":{"description":"The name of the NFT","type":"string"},"description":{"description":"The description of the NFT","type":"string"},"image":{"description":"The image of the NFT","type":"string"},"animation_url":{"description":"The animation url of the NFT","type":"string"},"external_url":{"description":"The external url of the NFT","type":"string"},"background_color":{"description":"The background color of the NFT","type":"string"},"properties":{"description":"(not recommended - use \"attributes\") The properties of the NFT."},"attributes":{"description":"Arbitrary metadata for this item.","type":"array","items":{"type":"object","properties":{"trait_type":{"type":"string"},"value":{"type":"string"}},"required":["trait_type","value"]}}}}]},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"price":{"description":"The amount of the \"currency\" token this token costs. Example: \"0.1\"","type":"string"},"priceInWei":{"description":"The amount of the \"currency\" token this token costs in wei. Remember to use the correct decimals amount for the currency. Example: \"100000000000000000\" = 0.1 ETH (18 decimals)","type":"string"},"currency":{"description":"The currency address to pay for minting the tokens. Defaults to the chain's native token.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"primarySaleRecipient":{"description":"If a price is specified, funds will be sent to the \"primarySaleRecipient\" address. Defaults to the \"primarySaleRecipient\" address of the contract.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the \"royaltyRecipient\" address of the contract.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the \"royaltyBps\" of the contract.","minimum":0,"maximum":10000,"type":"integer"},"validityStartTimestamp":{"description":"The start time (in Unix seconds) when the signature can be used to mint. Default: now","minimum":0,"type":"integer"},"validityEndTimestamp":{"description":"The end time (in Unix seconds) when the signature can be used to mint. Default: 10 years","minimum":0,"type":"integer"},"uid":{"description":"The uid is a unique identifier hashed in the payload to prevent replay attacks, ensuring it's only used once on-chain.","type":"string"}},"required":["metadata","to"]}}},"required":true},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC721 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"mintPayload":{"type":"object","properties":{"uri":{"type":"string"},"to":{"type":"string"},"price":{"type":"string"},"currency":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"primarySaleRecipient":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["uri","to","price","currency","primarySaleRecipient","royaltyRecipient","royaltyBps","validityStartTimestamp","validityEndTimestamp","uid"]},"typedDataPayload":{"description":"The payload to sign with a wallet's `signTypedData` method.","type":"object","properties":{"domain":{"description":"Specifies the contextual information used to prevent signature reuse across different contexts.","type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"chainId":{"type":"integer"},"verifyingContract":{"type":"string"}},"required":["name","version","chainId","verifyingContract"]},"types":{"description":"Defines the structure of the data types used in the message.","type":"object","properties":{"EIP712Domain":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"}},"required":["name","type"]}},"MintRequest":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"}},"required":["name","type"]}}},"required":["EIP712Domain","MintRequest"]},"message":{"type":"object","properties":{"uri":{"type":"string"},"to":{"type":"string"},"price":{"type":"string"},"currency":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"primarySaleRecipient":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["uri","to","price","currency","primarySaleRecipient","royaltyRecipient","royaltyBps","validityStartTimestamp","validityEndTimestamp","uid"],"description":"The structured data to be signed."},"primaryType":{"description":"The main type of the data in the message corresponding to a defined type in the `types` field.","type":"string","enum":["MintRequest"]}},"required":["domain","types","message","primaryType"]}},"required":["mintPayload","typedDataPayload"]}},"required":["result"],"example":{"result":{"mintPayload":{"uri":"ipfs://...","currency":"0x0000000000000000000000000000000000000000","uid":"0x3862386334363135326230303461303939626136653361643131343836373563","to":"0x...","royaltyRecipient":"0x...","primarySaleRecipient":"0x..."},"typedDataPayload":{"domain":{"name":"TokenERC721","version":"1","chainId":84532,"verifyingContract":"0x5002e3bF97F376Fe0480109e26c0208786bCDDd4"},"types":{"MintRequest":[{"name":"to","type":"address"},{"name":"royaltyRecipient","type":"address"},{"name":"royaltyBps","type":"uint256"},{"name":"primarySaleRecipient","type":"address"},{"name":"uri","type":"string"},{"name":"price","type":"uint256"},{"name":"currency","type":"address"},{"name":"validityStartTimestamp","type":"uint128"},{"name":"validityEndTimestamp","type":"uint128"},{"name":"uid","type":"bytes32"}]},"message":{"uri":"ipfs://test","currency":"0x0000000000000000000000000000000000000000","uid":"0xmyuid","to":"0x4Ff9aa707AE1eAeb40E581DF2cf4e14AffcC553d","royaltyRecipient":"0x4Ff9aa707AE1eAeb40E581DF2cf4e14AffcC553d","primarySaleRecipient":"0x4Ff9aa707AE1eAeb40E581DF2cf4e14AffcC553d"},"primaryType":"MintRequest"}}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc721/token/update":{"post":{"operationId":"erc721-updateTokenMetadata","summary":"Update token metadata","tags":["ERC721"],"description":"Update the metadata for an ERC721 token.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"Token ID to update metadata","type":"string"},"metadata":{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","metadata"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/get":{"get":{"operationId":"erc1155-get","summary":"Get details","tags":["ERC1155"],"description":"Get the details for a token in an ERC-1155 contract.","parameters":[{"schema":{"type":"string"},"example":"0","in":"query","name":"tokenId","required":true,"description":"The tokenId of the NFT to retrieve"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}},"required":["result"]},"example":{"result":{"metadata":{"id":"0","uri":"ipfs://QmdaWX1GEwnFW4NooYRej5BQybKNLdxkWtMwyw8KiWRueS/0","name":"My Edition NFT","description":"My Edition NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","type":"ERC1155","supply":"100","quantityOwned":"100"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/get-all":{"get":{"operationId":"erc1155-getAll","summary":"Get all details","tags":["ERC1155"],"description":"Get details for all tokens in an ERC-1155 contract.","parameters":[{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"The start token ID for paginated results. Defaults to 0."},{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"The page count for paginated results. Defaults to 100."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}}},"required":["result"]},"example":{"result":[{"metadata":{"id":"0","uri":"ipfs://QmdaWX1GEwnFW4NooYRej5BQybKNLdxkWtMwyw8KiWRueS/0","name":"My Edition NFT","description":"My Edition NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","type":"ERC1155","supply":"100","quantityOwned":"100"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/get-owned":{"get":{"operationId":"erc1155-getOwned","summary":"Get owned tokens","tags":["ERC1155"],"description":"Get all tokens in an ERC-1155 contract owned by a specific wallet.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"Address of the wallet to get NFTs for"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"metadata":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"owner":{"type":"string"},"type":{"anyOf":[{"type":"string","enum":["ERC1155"]},{"type":"string","enum":["ERC721"]},{"type":"string","enum":["metaplex"]}]},"supply":{"type":"string"},"quantityOwned":{"type":"string"}},"required":["metadata","owner","type","supply"]}}},"required":["result"]},"example":{"result":[{"metadata":{"id":"0","uri":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"owner":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","type":"ERC1155","supply":"600000150000000000000000000000000000000000009000000000000000000000712","quantityOwned":"9000000000000000000000000"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/balance-of":{"get":{"operationId":"erc1155-balanceOf","summary":"Get balance","tags":["ERC1155"],"description":"Get the balance of a specific wallet address for this ERC-1155 contract.","parameters":[{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"Address of the wallet to check NFT balance"},{"schema":{"type":"string"},"example":"0","in":"query","name":"tokenId","required":true,"description":"The tokenId of the NFT to check balance of"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}}},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/is-approved":{"get":{"operationId":"erc1155-isApproved","summary":"Check if approved transfers","tags":["ERC1155"],"description":"Check if the specific wallet has approved transfers from a specific operator wallet.","parameters":[{"schema":{"type":"string"},"example":"0x3EcDBF3B911d0e9052b64850693888b008e18373","in":"query","name":"ownerWallet","required":true,"description":"Address of the wallet who owns the NFT"},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"operator","required":true,"description":"Address of the operator to check approval on"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}}},"example":{"result":true}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/total-count":{"get":{"operationId":"erc1155-totalCount","summary":"Get total supply","tags":["ERC1155"],"description":"Get the total supply in circulation for this ERC-1155 contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"example":{"result":"1"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/total-supply":{"get":{"operationId":"erc1155-totalSupply","summary":"Get total supply","tags":["ERC1155"],"description":"Get the total supply in circulation for this ERC-1155 contract.","parameters":[{"schema":{"type":"string"},"example":"0","in":"query","name":"tokenId","required":true,"description":"The tokenId of the NFT to retrieve"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"example":[{"result":"100000000"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/signature/generate":{"post":{"operationId":"erc1155-signatureGenerate","summary":"Generate signature","tags":["ERC1155"],"description":"Generate a signature granting access for another wallet to mint tokens from this ERC-1155 contract. This method is typically called by the token contract owner.","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","type":"string"},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","minimum":0,"maximum":10000,"type":"integer"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","type":"string"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","type":"string"},"mintStartTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]},"mintEndTime":{"anyOf":[{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","type":"string"},{"minimum":0,"type":"integer"}]},"tokenId":{"description":"The token id to mint. If not provided, a new token id will be generated.","type":"string"}},"required":["to","quantity","metadata"],"examples":[{"to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","quantity":"1","metadata":{"name":"test tokenII","description":"test token"},"mintStartTime":"2023-06-07T21:51:33.386Z","mintEndTime":"2023-07-07T21:51:33.386Z"}]},{"allOf":[{"type":"object","properties":{"contractType":{"anyOf":[{"type":"string","enum":["TokenERC1155"]},{"type":"string","enum":["SignatureMintERC1155"]}]},"to":{"type":"string"},"quantity":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"minimum":0,"maximum":10000,"type":"integer"},"primarySaleRecipient":{"type":"string"},"pricePerToken":{"description":"An amount in native token (decimals allowed). Example: \"0.1\"","examples":["0.1"],"type":"string","pattern":"^\\d+(\\.\\d+)?$"},"pricePerTokenWei":{"description":"An amount in wei (no decimals). Example: \"50000000000\"","examples":["50000000000"],"type":"string","pattern":"^\\d+$"},"currency":{"type":"string"},"validityStartTimestamp":{"minimum":0,"type":"integer"},"validityEndTimestamp":{"minimum":0,"type":"integer"},"tokenId":{"type":"string"},"uid":{"type":"string"}},"required":["to","quantity","validityStartTimestamp"]},{"anyOf":[{"type":"object","properties":{"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","type":"string"},"description":{"description":"The description of the NFT","type":"string"},"image":{"description":"The image of the NFT","type":"string"},"animation_url":{"description":"The animation url of the NFT","type":"string"},"external_url":{"description":"The external url of the NFT","type":"string"},"background_color":{"description":"The background color of the NFT","type":"string"},"properties":{"description":"(not recommended - use \"attributes\") The properties of the NFT."},"attributes":{"description":"Arbitrary metadata for this item.","type":"array","items":{"type":"object","properties":{"trait_type":{"type":"string"},"value":{"type":"string"}},"required":["trait_type","value"]}}}},{"type":"string"}]}},"required":["metadata"]},{"type":"object","properties":{"tokenId":{"type":"string"}},"required":["tokenId"]}]}]}]}}}},"parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":false,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."},{"schema":{"type":"string"},"in":"header","name":"x-thirdweb-sdk-version","required":false,"description":"Override the thirdweb sdk version used. Example: \"5\" for v5 SDK compatibility."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"object","properties":{"payload":{"type":"object","properties":{"uri":{"type":"string"},"tokenId":{"type":"string"},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","default":"0","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now if value not provided.","minimum":0,"type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","minimum":0,"type":"integer"}},"required":["uri","tokenId","to","royaltyRecipient","quantity","royaltyBps","primarySaleRecipient","uid","metadata","currencyAddress","price","mintStartTime","mintEndTime"],"examples":[{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","tokenId":"115792089237316195423570985008687907853269984665640564039457584007913129639935","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x0000000000000000000000000000000000000000","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3462396330333131353033363433336439343162303033363933373333396232","metadata":{"name":"test tokenII","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686174693,"mintEndTime":1688766693},"signature":"0x674414eb46d1be3fb8f703b51049aa857b27c70c72293f054ed211be0efb843841bcd86b1245c321b20e50e2a9bebb555e70246d84778d5e76668db2f102c6401b"}]},"signature":{"type":"string"}},"required":["payload","signature"]},{"type":"object","properties":{"payload":{"type":"object","properties":{"to":{"type":"string"},"royaltyRecipient":{"type":"string"},"royaltyBps":{"type":"string"},"primarySaleRecipient":{"type":"string"},"tokenId":{"type":"string"},"uri":{"type":"string"},"quantity":{"type":"string"},"pricePerToken":{"type":"string"},"currency":{"type":"string"},"validityStartTimestamp":{"type":"integer"},"validityEndTimestamp":{"type":"integer"},"uid":{"type":"string"}},"required":["to","royaltyRecipient","royaltyBps","primarySaleRecipient","tokenId","uri","quantity","pricePerToken","currency","validityStartTimestamp","validityEndTimestamp","uid"]},"signature":{"type":"string"}},"required":["payload","signature"]}]}},"required":["result"],"example":{"result":"1"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/can-claim":{"get":{"operationId":"erc1155-canClaim","summary":"Check if tokens are available for claiming","tags":["ERC1155"],"description":"Check if tokens are currently available for claiming, optionally specifying if a specific wallet address can claim.","parameters":[{"schema":{"type":"string"},"in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":true,"description":"The token ID of the NFT you want to claim."},{"schema":{"type":"string"},"example":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens. This considers all aspects of the active claim phase, including allowlists, previous claims, etc."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/get-active":{"get":{"operationId":"erc1155-getActiveClaimConditions","summary":"Get currently active claim phase for a specific token ID.","tags":["ERC1155"],"description":"Retrieve the currently active claim phase for a specific token ID, if any.","parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"integer"}]},"in":"query","name":"tokenId","required":true,"description":"The token ID of the NFT you want to claim."},{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/get-all":{"get":{"operationId":"erc1155-getAllClaimConditions","summary":"Get all the claim phases configured for a specific token ID.","tags":["ERC1155"],"description":"Get all the claim phases configured for a specific token ID.","parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"integer"}]},"in":"query","name":"tokenId","required":true,"description":"The token ID of the NFT you want to get the claim conditions for."},{"schema":{"type":"boolean"},"in":"query","name":"withAllowList","required":false,"description":"Provide a boolean value to include the allowlist in the response."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"format":"date-time","type":"string"},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"availableSupply":{"type":"string"},"currentMintSupply":{"type":"string"},"currencyMetadata":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}}]}},"required":["startTime","merkleRootHash","availableSupply","currentMintSupply","currencyMetadata"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/get-claimer-proofs":{"get":{"operationId":"erc1155-getClaimerProofs","summary":"Get claimer proofs","tags":["ERC1155"],"description":"Returns allowlist information and merkle proofs for a given wallet address. Returns null if no proof is found for the given wallet address.","parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"integer"}]},"in":"query","name":"tokenId","required":true,"description":"The token ID of the NFT you want to get the claimer proofs for."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"The wallet address to get the merkle proofs for."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"anyOf":[{"type":"null"},{"type":"object","properties":{"price":{"type":"string"},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"type":"string"},"proof":{"type":"array","items":{"type":"string"}}},"required":["address","maxClaimable","proof"]}]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/get-claim-ineligibility-reasons":{"post":{"operationId":"erc1155-getClaimIneligibilityReasons","summary":"Get claim ineligibility reasons","tags":["ERC1155"],"description":"Get an array of reasons why a specific wallet address is not eligible to claim tokens, if any.","parameters":[{"schema":{"anyOf":[{"type":"string"},{"type":"integer"}]},"in":"query","name":"tokenId","required":true,"description":"The token ID of the NFT you want to check if the wallet address can claim."},{"schema":{"type":"string","pattern":"^\\d+$"},"example":"42","in":"query","name":"quantity","required":true,"description":"The amount of tokens to claim."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"addressToCheck","required":false,"description":"The wallet address to check if it can claim tokens."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"anyOf":[{"type":"string"},{"anyOf":[{"type":"string","enum":["There is not enough supply to claim."]},{"type":"string","enum":["This address is not on the allowlist."]},{"type":"string","enum":["Not enough time since last claim transaction. Please wait."]},{"type":"string","enum":["Claim phase has not started yet."]},{"type":"string","enum":["You have already claimed the token."]},{"type":"string","enum":["Incorrect price or currency."]},{"type":"string","enum":["Cannot claim more than maximum allowed quantity."]},{"type":"string","enum":["There are not enough tokens in the wallet to pay for the claim."]},{"type":"string","enum":["There is no active claim phase at the moment. Please check back in later."]},{"type":"string","enum":["There is no claim condition set."]},{"type":"string","enum":["No wallet connected."]},{"type":"string","enum":["No claim conditions found."]}]}]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/airdrop":{"post":{"operationId":"erc1155-airdrop","summary":"Airdrop tokens","tags":["ERC1155"],"description":"Airdrop ERC-1155 tokens to specific wallets.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"Token ID of the NFT to airdrop","type":"string"},"addresses":{"description":"Addresses and quantities to airdrop to","type":"array","items":{"type":"object","properties":{"address":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"quantity":{"default":"1","type":"string"}},"required":["address","quantity"]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","addresses"]},"example":{"tokenId":"0","addresses":[{"address":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","quantity":"1"},{"address":"0x3EcDBF3B911d0e9052b64850693888b008e18373","quantity":"1"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/burn":{"post":{"operationId":"erc1155-burn","summary":"Burn token","tags":["ERC1155"],"description":"Burn ERC-1155 tokens in the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"The token ID to burn","type":"string"},"amount":{"description":"The amount of tokens to burn","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","amount"]},"example":{"tokenId":"0","amount":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/burn-batch":{"post":{"operationId":"erc1155-burnBatch","summary":"Burn tokens (batch)","tags":["ERC1155"],"description":"Burn a batch of ERC-1155 tokens in the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenIds":{"type":"array","items":{"description":"The token IDs to burn","type":"string"}},"amounts":{"type":"array","items":{"description":"The amounts of tokens to burn","type":"string"}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenIds","amounts"]},"example":{"tokenIds":["0","1"],"amounts":["1","1"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-to":{"post":{"operationId":"erc1155-claimTo","summary":"Claim tokens to wallet","tags":["ERC1155"],"description":"Claim ERC-1155 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to claim the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"Token ID of the NFT to claim","type":"string"},"quantity":{"description":"Quantity of NFTs to mint","type":"string"},"singlePhaseDrop":{"description":"Whether the drop is a single phase drop","type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","tokenId","quantity"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0","quantity":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/lazy-mint":{"post":{"operationId":"erc1155-lazyMint","summary":"Lazy mint","tags":["ERC1155"],"description":"Lazy mint ERC-1155 tokens to be claimed in the future.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"metadatas":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["metadatas"]},"example":{"metadatas":[{"name":"My NFT #1","description":"My NFT #1 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},{"name":"My NFT #2","description":"My NFT #2 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/mint-additional-supply-to":{"post":{"operationId":"erc1155-mintAdditionalSupplyTo","summary":"Mint additional supply","tags":["ERC1155"],"description":"Mint additional supply of ERC-1155 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to mint the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"Token ID to mint additional supply to","type":"string"},"additionalSupply":{"description":"The amount of supply to mint","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","tokenId","additionalSupply"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"1","additionalSupply":"10"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/mint-batch-to":{"post":{"operationId":"erc1155-mintBatchTo","summary":"Mint tokens (batch)","tags":["ERC1155"],"description":"Mint ERC-1155 tokens to multiple wallets in one transaction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to mint the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"metadataWithSupply":{"type":"array","items":{"type":"object","properties":{"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"supply":{"type":"string"}},"required":["metadata","supply"]}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","metadataWithSupply"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","metadataWithSupply":[{"metadata":{"name":"My NFT #1","description":"My NFT #1 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"supply":"10"},{"metadata":{"name":"My NFT #2","description":"My NFT #2 description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"supply":"5"}]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/mint-to":{"post":{"operationId":"erc1155-mintTo","summary":"Mint tokens","tags":["ERC1155"],"description":"Mint ERC-1155 tokens to a specific wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"receiver":{"description":"Address of the wallet to mint the NFT to","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"metadataWithSupply":{"type":"object","properties":{"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"supply":{"type":"string"}},"required":["metadata","supply"]},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["receiver","metadataWithSupply"]},"example":{"receiver":"0x3EcDBF3B911d0e9052b64850693888b008e18373","metadataWithSupply":{"metadata":{"name":"My NFT","description":"My NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"supply":"100"}}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/set-approval-for-all":{"post":{"operationId":"erc1155-setApprovalForAll","summary":"Set approval for all","tags":["ERC1155"],"description":"Approve or remove operator as an operator for the caller. Operators can call transferFrom or safeTransferFrom for any token owned by the caller.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"operator":{"description":"Address of the operator to give approval to","type":"string"},"approved":{"description":"whether to approve or revoke approval","type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["operator","approved"]},"example":{"operator":"0x3EcDBF3B911d0e9052b64850693888b008e18373","approved":"true"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/transfer":{"post":{"operationId":"erc1155-transfer","summary":"Transfer token","tags":["ERC1155"],"description":"Transfer an ERC-1155 token from the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"to":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"type":"string","pattern":"^\\d+$","description":"The token ID to transfer.","example":"42"},"amount":{"type":"string","pattern":"^\\d+$","description":"The amount of tokens to transfer.","example":"42"},"data":{"description":"A valid hex string","type":"string","pattern":"^0x[a-fA-F0-9]*$","example":"0x68656c6c6f20776f726c64"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["to","tokenId","amount"]},"example":{"to":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0","amount":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/transfer-from":{"post":{"operationId":"erc1155-transferFrom","summary":"Transfer token from wallet","tags":["ERC1155"],"description":"Transfer an ERC-1155 token from the connected wallet to another wallet. Requires allowance.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"from":{"description":"The sender address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"to":{"description":"The recipient address.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"type":"string","pattern":"^\\d+$","description":"The token ID to transfer.","example":"42"},"amount":{"type":"string","pattern":"^\\d+$","description":"The amount of tokens to transfer.","example":"42"},"data":{"description":"A valid hex string","type":"string","pattern":"^0x[a-fA-F0-9]*$","example":"0x68656c6c6f20776f726c64"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["from","to","tokenId","amount"]},"example":{"from":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","to":"0x3EcDBF3B911d0e9052b64850693888b008e18373","tokenId":"0","amount":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"ERC1155 contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/signature/mint":{"post":{"operationId":"erc1155-signatureMint","summary":"Signature mint","tags":["ERC1155"],"description":"Mint ERC-1155 tokens from a generated signature.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","properties":{"uri":{"type":"string"},"tokenId":{"type":"string"},"to":{"description":"The wallet address that can use this signature to mint tokens. This is to prevent another wallet from intercepting the signature and using it to mint tokens for themselves.","type":"string"},"royaltyRecipient":{"description":"The address that will receive the royalty fees from secondary sales. Defaults to the royaltyRecipient address of the contract.","type":"string"},"quantity":{"description":"The number of tokens this signature can be used to mint.","type":"string"},"royaltyBps":{"description":"The percentage fee you want to charge for secondary sales. Defaults to the royaltyBps of the contract.","type":"string"},"primarySaleRecipient":{"description":"If a price is specified, the funds will be sent to the primarySaleRecipient address. Defaults to the primarySaleRecipient address of the contract.","type":"string"},"uid":{"description":"A unique identifier for the payload, used to prevent replay attacks and other types of exploits.\n      Note that the input value gets hashed in the actual payload that gets generated. \n      The smart contract enforces on-chain that no uid gets used more than once, \n      which means you can deterministically generate the uid to prevent specific exploits.","type":"string"},"metadata":{"anyOf":[{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},{"type":"string"}]},"currencyAddress":{"description":"The address of the currency to pay for minting the tokens (use the price field to specify the price). Defaults to NATIVE_TOKEN_ADDRESS","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"price":{"description":"If you want the user to pay for minting the tokens, you can specify the price per token. Defaults to 0.","default":"0","type":"string"},"mintStartTime":{"description":"The time from which the signature can be used to mint tokens. Defaults to now if value not provided.","minimum":0,"type":"integer"},"mintEndTime":{"description":"The time until which the signature can be used to mint tokens. Defaults to 10 years from now.","minimum":0,"type":"integer"}},"required":["uri","tokenId","to","royaltyRecipient","quantity","royaltyBps","primarySaleRecipient","uid","metadata","currencyAddress","price","mintStartTime","mintEndTime"],"example":{"payload":{"uri":"ipfs://QmP1i29T534877ptz8bazU1eYiYLzQ1GRK4cnZWngsz9ud/0","tokenId":"115792089237316195423570985008687907853269984665640564039457584007913129639935","to":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","royaltyRecipient":"0x0000000000000000000000000000000000000000","quantity":"1","royaltyBps":"0","primarySaleRecipient":"0x0000000000000000000000000000000000000000","uid":"0x3462396330333131353033363433336439343162303033363933373333396232","metadata":{"name":"test tokenII","description":"test token"},"currencyAddress":"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","price":"0","mintStartTime":1686174693,"mintEndTime":1688766693},"signature":"0x674414eb46d1be3fb8f703b51049aa857b27c70c72293f054ed211be0efb843841bcd86b1245c321b20e50e2a9bebb555e70246d84778d5e76668db2f102c6401b"}},"signature":{"type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["payload","signature"]},"example":{"payload":{},"signature":""}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/set":{"post":{"operationId":"erc1155-setClaimConditions","summary":"Overwrite the claim conditions for a specific token ID..","tags":["ERC1155"],"description":"Overwrite the claim conditions for a specific token ID. All properties of a phase are optional, with the default being a free, open, unlimited claim, in the native currency, starting immediately.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"ID of the token to set the claim conditions for","anyOf":[{"type":"string"},{"type":"integer"}]},"claimConditionInputs":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}}},"resetClaimEligibilityForAll":{"type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","claimConditionInputs"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/set-batch":{"post":{"operationId":"erc1155-claimConditionsUpdate","summary":"Overwrite the claim conditions for a specific token ID..","tags":["ERC1155"],"description":"Allows you to set claim conditions for multiple token IDs in a single transaction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"claimConditionsForToken":{"type":"array","items":{"type":"object","properties":{"tokenId":{"description":"ID of the token to set the claim conditions for","anyOf":[{"type":"string"},{"type":"integer"}]},"claimConditions":{"type":"array","items":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}}}},"required":["tokenId","claimConditions"]}},"resetClaimEligibilityForAll":{"type":"boolean"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["claimConditionsForToken"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/claim-conditions/update":{"post":{"operationId":"erc1155-updateClaimConditions","summary":"Update a single claim phase.","tags":["ERC1155"],"description":"Update a single claim phase on a specific token ID, by providing the index of the claim phase and the new phase configuration.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"Token ID to update claim phase for","anyOf":[{"type":"string"},{"type":"integer"}]},"claimConditionInput":{"type":"object","properties":{"maxClaimableSupply":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]},"startTime":{"anyOf":[{"format":"date-time","type":"string"},{"minimum":0,"type":"integer"}]},"price":{"anyOf":[{"type":"number"},{"type":"string"}]},"currencyAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"maxClaimablePerWallet":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"waitInSeconds":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"string"}]},"merkleRootHash":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"number"}}]},"metadata":{"type":"object","properties":{"name":{"type":"string"}}},"snapshot":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"array","items":{"type":"object","properties":{"price":{"anyOf":[{"type":"string"},{"type":"number"}]},"currencyAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"address":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"maxClaimable":{"anyOf":[{"type":"string"},{"minimum":0,"type":"integer"}]}},"required":["address"]}},{"type":"null"}]}}},"index":{"description":"Index of the claim condition to update","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","claimConditionInput","index"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/erc1155/token/update":{"post":{"operationId":"erc1155-updateTokenMetadata","summary":"Update token metadata","tags":["ERC1155"],"description":"Update the metadata for an ERC1155 token.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenId":{"description":"Token ID to update metadata","type":"string"},"metadata":{"type":"object","properties":{"name":{"description":"The name of the NFT","anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"description":"The description of the NFT","anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The image of the NFT"},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The external url of the NFT"},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The animation url of the NFT"},"properties":{"description":"The properties of the NFT"},"attributes":{"description":"The attributes of the NFT"},"background_color":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"The background color of the NFT"}}},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["tokenId","metadata"]}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/get-all":{"get":{"operationId":"getAllDirectListings","summary":"Get all listings","tags":["Marketplace-DirectListings"],"description":"Get all direct listings for this marketplace contract.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"seller","required":false,"description":"Being sold by this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"pricePerToken":{"description":"The price to pay per unit of NFTs listed.","type":"string"},"isReservedListing":{"description":"Whether the listing is reserved to be bought from a specific set of buyers.","type":"boolean"},"id":{"description":"The listing ID.","type":"string"},"currencyValuePerToken":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]},"startTimeInSeconds":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"}},"required":["assetContractAddress","tokenId","pricePerToken","id"]}}},"required":["result"],"example":[{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE","quantity":"1","pricePerToken":"10000000000","isReservedListing":false,"id":"0","currencyValuePerToken":{"name":"MATIC","symbol":"MATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"status":1,"startTimeInSeconds":1686006043,"endTimeInSeconds":1686610889}]}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/get-all-valid":{"get":{"operationId":"getAllValidDirectListings","summary":"Get all valid listings","tags":["Marketplace-DirectListings"],"description":"Get all the valid direct listings for this marketplace contract. A valid listing is where the listing is active, and the creator still owns & has approved Marketplace to transfer the listed NFTs.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"seller","required":false,"description":"Being sold by this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"pricePerToken":{"description":"The price to pay per unit of NFTs listed.","type":"string"},"isReservedListing":{"description":"Whether the listing is reserved to be bought from a specific set of buyers.","type":"boolean"},"id":{"description":"The listing ID.","type":"string"},"currencyValuePerToken":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]},"startTimeInSeconds":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"}},"required":["assetContractAddress","tokenId","pricePerToken","id"]}}},"required":["result"]},"example":{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE","quantity":"1","pricePerToken":"10000000000","isReservedListing":false,"id":"0","currencyValuePerToken":{"name":"MATIC","symbol":"MATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"status":1,"startTimeInSeconds":1686006043,"endTimeInSeconds":1686610889}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/get-listing":{"get":{"operationId":"getDirectListing","summary":"Get direct listing","tags":["Marketplace-DirectListings"],"description":"Gets a direct listing on this marketplace contract.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"pricePerToken":{"description":"The price to pay per unit of NFTs listed.","type":"string"},"isReservedListing":{"description":"Whether the listing is reserved to be bought from a specific set of buyers.","type":"boolean"},"id":{"description":"The listing ID.","type":"string"},"currencyValuePerToken":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]},"startTimeInSeconds":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"}},"required":["assetContractAddress","tokenId","pricePerToken","id"]}},"required":["result"]},"example":{"result":[{"metadata":{"id":"0","uri":"ipfs://QmdaWX1GEwnFW4NooYRej5BQybKNLdxkWtMwyw8KiWRueS/0","name":"My Edition NFT","description":"My Edition NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","type":"ERC1155","supply":"100","quantityOwned":"100"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/is-buyer-approved-for-listing":{"get":{"operationId":"isBuyerApprovedForDirectListings","summary":"Check approved buyer","tags":["Marketplace-DirectListings"],"description":"Check if a buyer is approved to purchase a specific direct listing.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"walletAddress","required":true,"description":"The wallet address of the buyer to check."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]},"example":{"result":true}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/is-currency-approved-for-listing":{"get":{"operationId":"isCurrencyApprovedForDirectListings","summary":"Check approved currency","tags":["Marketplace-DirectListings"],"description":"Check if a currency is approved for a specific direct listing.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"currencyContractAddress","required":true,"description":"The smart contract address of the ERC20 token to check."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]},"example":{"result":true}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/get-total-count":{"get":{"operationId":"getDirectListingsTotalCount","summary":"Transfer token from wallet","tags":["Marketplace-DirectListings"],"description":"Get the total number of direct listings on this marketplace contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-all":{"get":{"operationId":"getAllEnglishAuctions","summary":"Get all English auctions","tags":["Marketplace-EnglishAuctions"],"description":"Get all English auction listings on this marketplace contract.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"seller","required":false,"description":"Being sold by this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The listing ID.","type":"string"},"minimumBidAmount":{"description":"The minimum price that a bid must be in order to be accepted.","type":"string"},"buyoutBidAmount":{"description":"The buyout price of the auction.","type":"string"},"buyoutCurrencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"minimum":1,"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"timeBufferInSeconds":{"description":"This is a buffer e.g. x seconds.","type":"number"},"bidBufferBps":{"description":"To be considered as a new winning bid, a bid must be at least x% greater than the previous bid.","minimum":0,"maximum":10000,"type":"integer"},"startTimeInSeconds":{"description":"The start time of the auction.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","buyoutBidAmount","buyoutCurrencyValue","timeBufferInSeconds","bidBufferBps","startTimeInSeconds","endTimeInSeconds"]}}},"required":["result"]},"example":{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE","quantity":"1","id":"0","minimumBidAmount":"10000000000","buyoutBidAmount":"10000000000","buyoutCurrencyValue":{"name":"MATIC","symbol":"MATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"timeBufferInSeconds":600,"bidBufferBps":100,"startTimeInSeconds":1686006043,"endTimeInSeconds":1686610889,"asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"status":1}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-all-valid":{"get":{"operationId":"getAllValidEnglishAuctions","summary":"Get all valid English auctions","tags":["Marketplace-EnglishAuctions"],"description":"Get all valid English auction listings on this marketplace contract.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"seller","required":false,"description":"Being sold by this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The listing ID.","type":"string"},"minimumBidAmount":{"description":"The minimum price that a bid must be in order to be accepted.","type":"string"},"buyoutBidAmount":{"description":"The buyout price of the auction.","type":"string"},"buyoutCurrencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"minimum":1,"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"timeBufferInSeconds":{"description":"This is a buffer e.g. x seconds.","type":"number"},"bidBufferBps":{"description":"To be considered as a new winning bid, a bid must be at least x% greater than the previous bid.","minimum":0,"maximum":10000,"type":"integer"},"startTimeInSeconds":{"description":"The start time of the auction.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","buyoutBidAmount","buyoutCurrencyValue","timeBufferInSeconds","bidBufferBps","startTimeInSeconds","endTimeInSeconds"]}}},"required":["result"]},"example":{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE","quantity":"1","id":"0","minimumBidAmount":"10000000000","buyoutBidAmount":"10000000000","buyoutCurrencyValue":{"name":"MATIC","symbol":"MATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"timeBufferInSeconds":600,"bidBufferBps":100,"startTimeInSeconds":1686006043,"endTimeInSeconds":1686610889,"asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"status":1}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-auction":{"get":{"operationId":"getEnglishAuction","summary":"Get English auction","tags":["Marketplace-EnglishAuctions"],"description":"Get a specific English auction listing on this marketplace contract.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The listing ID.","type":"string"},"minimumBidAmount":{"description":"The minimum price that a bid must be in order to be accepted.","type":"string"},"buyoutBidAmount":{"description":"The buyout price of the auction.","type":"string"},"buyoutCurrencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"minimum":1,"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"timeBufferInSeconds":{"description":"This is a buffer e.g. x seconds.","type":"number"},"bidBufferBps":{"description":"To be considered as a new winning bid, a bid must be at least x% greater than the previous bid.","minimum":0,"maximum":10000,"type":"integer"},"startTimeInSeconds":{"description":"The start time of the auction.","minimum":0,"type":"integer"},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","buyoutBidAmount","buyoutCurrencyValue","timeBufferInSeconds","bidBufferBps","startTimeInSeconds","endTimeInSeconds"]}},"required":["result"]},"example":{"result":[{"metadata":{"id":"0","uri":"ipfs://QmdaWX1GEwnFW4NooYRej5BQybKNLdxkWtMwyw8KiWRueS/0","name":"My Edition NFT","description":"My Edition NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","type":"ERC1155","supply":"100","quantityOwned":"100"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-bid-buffer-bps":{"get":{"operationId":"getEnglishAuctionsBidBufferBps","summary":"Get bid buffer BPS","tags":["Marketplace-EnglishAuctions"],"description":"Get the basis points of the bid buffer. \nThis is the percentage higher that a new bid must be than the current highest bid in order to be placed. \nIf there is no current bid, the bid must be at least the minimum bid amount.\nReturns the value in percentage format, e.g. 100 = 1%.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"Returns a number representing the basis points of the bid buffer.","type":"integer"}},"required":["result"]},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-minimum-next-bid":{"get":{"operationId":"getEnglishAuctionsMinimumNextBid","summary":"Get minimum next bid","tags":["Marketplace-EnglishAuctions"],"description":"Helper function to calculate the value that the next bid must be in order to be accepted. \nIf there is no current bid, the bid must be at least the minimum bid amount.\nIf there is a current bid, the bid must be at least the current bid amount + the bid buffer.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The id of the listing to retrieve."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."}},"required":["result"]},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-winning-bid":{"get":{"operationId":"getEnglishAuctionsWinningBid","summary":"Get winning bid","tags":["Marketplace-EnglishAuctions"],"description":"Get the current highest bid of an active auction.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The ID of the listing to retrieve the winner for."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"auctionId":{"description":"The id of the auction.","type":"string"},"bidderAddress":{"description":"The address of the buyer who made the offer.","type":"string"},"currencyContractAddress":{"description":"The currency contract address of the offer token.","type":"string"},"bidAmount":{"description":"The amount of coins offered per token.","type":"string"},"bidAmountCurrencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"minimum":1,"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."}}}}},"example":{"result":"0x..."}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-total-count":{"get":{"operationId":"getEnglishAuctionsTotalCount","summary":"Get total listings","tags":["Marketplace-EnglishAuctions"],"description":"Get the count of English auction listings on this marketplace contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/is-winning-bid":{"get":{"operationId":"isEnglishAuctionsWinningBid","summary":"Check winning bid","tags":["Marketplace-EnglishAuctions"],"description":"Check if a bid is or will be the winning bid for an auction.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The ID of the listing to retrieve the winner for."},{"schema":{"type":"string"},"in":"query","name":"bidAmount","required":true,"description":"The amount of the bid to check if it is the winning bid."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean"}},"required":["result"]},"example":{"result":true}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/get-winner":{"get":{"operationId":"getEnglishAuctionsWinner","summary":"Get winner","tags":["Marketplace-EnglishAuctions"],"description":"Get the winner of an English auction. Can only be called after the auction has ended.","parameters":[{"schema":{"type":"string"},"in":"query","name":"listingId","required":true,"description":"The ID of the listing to retrieve the winner for."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]},"example":{"result":"0x..."}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/get-all":{"get":{"operationId":"getAllMarketplaceOffers","summary":"Get all offers","tags":["Marketplace-Offers"],"description":"Get all offers on this marketplace contract.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"offeror","required":false,"description":"has offers from this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The id of the offer.","type":"string"},"offerorAddress":{"description":"The address of the creator of offer.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"currencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"totalPrice":{"description":"The total offer amount for the NFTs.","type":"string"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","offerorAddress","totalPrice"]}}},"required":["result"]},"example":{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0x9c3C9283D3e44854697Cd22D3Faa240Cfb032889","quantity":"1","id":"0","offerorAddress":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","currencyValue":{"name":"Wrapped Matic","symbol":"WMATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"totalPrice":"10000000000","asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"endTimeInSeconds":1686610889,"status":4}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/get-all-valid":{"get":{"operationId":"getAllValidMarketplaceOffers","summary":"Get all valid offers","tags":["Marketplace-Offers"],"description":"Get all valid offers on this marketplace contract. Valid offers are offers that have not expired, been canceled, or been accepted.","parameters":[{"schema":{"minimum":1,"type":"integer"},"in":"query","name":"count","required":false,"description":"Number of listings to fetch"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"offeror","required":false,"description":"has offers from this Address"},{"schema":{"minimum":0,"type":"integer"},"in":"query","name":"start","required":false,"description":"Start from this index (pagination)"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"query","name":"tokenContract","required":false,"description":"Token contract address to show NFTs from"},{"schema":{"type":"string"},"in":"query","name":"tokenId","required":false,"description":"Only show NFTs with this ID"},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The id of the offer.","type":"string"},"offerorAddress":{"description":"The address of the creator of offer.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"currencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"totalPrice":{"description":"The total offer amount for the NFTs.","type":"string"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","offerorAddress","totalPrice"]}}},"required":["result"]},"example":{"result":[{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","currencyContractAddress":"0x9c3C9283D3e44854697Cd22D3Faa240Cfb032889","quantity":"1","id":"0","offerorAddress":"0x1946267d81Fb8aDeeEa28e6B98bcD446c8248473","currencyValue":{"name":"Wrapped Matic","symbol":"WMATIC","decimals":18,"value":"10000000000","displayValue":"0.00000001"},"totalPrice":"10000000000","asset":{"id":"0","uri":"ipfs://QmPw2Dd1dnB6dQCnqGayCTnxUxHrB7m4YFeyph6PYPMboP/0","name":"TJ-Origin","description":"Origin","external_url":"","attributes":[{"trait_type":"Mode","value":"GOD"}]},"endTimeInSeconds":1686610889,"status":4}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/get-offer":{"get":{"operationId":"getMarketplaceOffer","summary":"Get offer","tags":["Marketplace-Offers"],"description":"Get details about an offer.","parameters":[{"schema":{"type":"string"},"in":"query","name":"offerId","required":true,"description":"The ID of the offer to get information about."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"id":{"description":"The id of the offer.","type":"string"},"offerorAddress":{"description":"The address of the creator of offer.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"currencyValue":{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"decimals":{"type":"integer"},"value":{"type":"string"},"displayValue":{"type":"string"}},"required":["name","symbol","decimals","value","displayValue"],"description":"The `CurrencyValue` of the listing. Useful for displaying the price information."},"totalPrice":{"description":"The total offer amount for the NFTs.","type":"string"},"asset":{"additionalProperties":true,"type":"object","properties":{"id":{"type":"string"},"uri":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"image":{"anyOf":[{"type":"string"},{"type":"null"}]},"external_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"animation_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"properties":{},"attributes":{}},"required":["id","uri"]},"endTimeInSeconds":{"description":"The end time of the auction.","minimum":0,"type":"integer"},"status":{"anyOf":[{"type":"number","enum":[0]},{"type":"number","enum":[1]},{"type":"number","enum":[2]},{"type":"number","enum":[3]},{"type":"number","enum":[4]},{"type":"number","enum":[5]}]}},"required":["assetContractAddress","tokenId","id","offerorAddress","totalPrice"]}},"required":["result"]},"example":{"result":[{"metadata":{"id":"0","uri":"ipfs://QmdaWX1GEwnFW4NooYRej5BQybKNLdxkWtMwyw8KiWRueS/0","name":"My Edition NFT","description":"My Edition NFT description","image":"ipfs://QmciR3WLJsf2BgzTSjbG5zCxsrEQ8PqsHK7JWGWsDSNo46/nft.png"},"owner":"0xE79ee09bD47F4F5381dbbACaCff2040f2FbC5803","type":"ERC1155","supply":"100","quantityOwned":"100"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/get-total-count":{"get":{"operationId":"getMarketplaceOffersTotalCount","summary":"Get total count","tags":["Marketplace-Offers"],"description":"Get the total number of offers on this marketplace contract.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string"}},"required":["result"]},"example":{"result":"1"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/create-listing":{"post":{"operationId":"createDirectListing","summary":"Create direct listing","tags":["Marketplace-DirectListings"],"description":"Create a direct listing on this marketplace contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"pricePerToken":{"description":"The price to pay per unit of NFTs listed.","type":"string"},"isReservedListing":{"description":"Whether the listing is reserved to be bought from a specific set of buyers.","type":"boolean"},"startTimestamp":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimestamp":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["assetContractAddress","tokenId","pricePerToken"]},"example":{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","pricePerToken":"0.00000001","isReservedListing":false,"quantity":"1","startTimestamp":1686006043038,"endTimestamp":1686610889058}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/update-listing":{"post":{"operationId":"updateDirectListing","summary":"Update direct listing","tags":["Marketplace-DirectListings"],"description":"Update a direct listing on this marketplace contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to update.","type":"string"},"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"pricePerToken":{"description":"The price to pay per unit of NFTs listed.","type":"string"},"isReservedListing":{"description":"Whether the listing is reserved to be bought from a specific set of buyers.","type":"boolean"},"startTimestamp":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimestamp":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId","assetContractAddress","tokenId","pricePerToken"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/buy-from-listing":{"post":{"operationId":"buyFromDirectListing","summary":"Buy from direct listing","tags":["Marketplace-DirectListings"],"description":"Buy from a specific direct listing from this marketplace contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to approve a buyer for.","type":"string"},"quantity":{"description":"The number of tokens to buy (default is 1 for ERC721 NFTs).","type":"string"},"buyer":{"description":"The wallet address of the buyer.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId","quantity","buyer"]},"example":{"listingId":"0","quantity":"1","buyer":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/approve-buyer-for-reserved-listing":{"post":{"operationId":"approveBuyerForReservedListing","summary":"Approve buyer for reserved listing","tags":["Marketplace-DirectListings"],"description":"Approve a wallet address to buy from a reserved listing.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to approve a buyer for.","type":"string"},"buyer":{"description":"The wallet address of the buyer to approve.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId","buyer"]},"example":{"listingId":"0","buyer":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/revoke-buyer-approval-for-reserved-listing":{"post":{"operationId":"revokeBuyerApprovalForReservedListing","summary":"Revoke approval for reserved listings","tags":["Marketplace-DirectListings"],"description":"Revoke approval for a buyer to purchase a reserved listing.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to approve a buyer for.","type":"string"},"buyerAddress":{"description":"The wallet address of the buyer to approve.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId","buyerAddress"]},"example":{"listingId":"0","buyerAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/revoke-currency-approval-for-listing":{"post":{"operationId":"revokeCurrencyApprovalForListing","summary":"Revoke currency approval for reserved listing","tags":["Marketplace-DirectListings"],"description":"Revoke approval of a currency for a reserved listing.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to approve a buyer for.","type":"string"},"currencyContractAddress":{"description":"The wallet address of the buyer to approve.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId","currencyContractAddress"]},"example":{"listingId":"0","currencyContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/direct-listings/cancel-listing":{"post":{"operationId":"cancelDirectListing","summary":"Cancel direct listing","tags":["Marketplace-DirectListings"],"description":"Cancel a direct listing from this marketplace contract. Only the creator of the listing can cancel it.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing you want to cancel.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/buyout-auction":{"post":{"operationId":"buyoutEnglishAuction","summary":"Buyout English auction","tags":["Marketplace-EnglishAuctions"],"description":"Buyout the listing for this auction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to buy NFT(s) from.","type":"string"}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/cancel-auction":{"post":{"operationId":"cancelEnglishAuction","summary":"Cancel English auction","tags":["Marketplace-EnglishAuctions"],"description":"Cancel an existing auction listing. Only the creator of the listing can cancel it. Auctions cannot be canceled once a bid has been made.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to cancel auction.","type":"string"}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/create-auction":{"post":{"operationId":"createEnglishAuction","summary":"Create English auction","tags":["Marketplace-EnglishAuctions"],"description":"Create an English auction listing on this marketplace contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"startTimestamp":{"description":"The start time of the listing. If not set, defaults to now.","minimum":0,"type":"integer"},"endTimestamp":{"description":"The end time of the listing. If not set, defaults to 7 days from now.","minimum":0,"type":"integer"},"buyoutBidAmount":{"description":"amount to buy the NFT and close the listing.","type":"string"},"minimumBidAmount":{"description":"Minimum amount that bids must be to placed","type":"string"},"bidBufferBps":{"description":"percentage the next bid must be higher than the current highest bid (default is contract-level bid buffer bps)","type":"string"},"timeBufferInSeconds":{"description":"time in seconds that are added to the end time when a bid is placed (default is contract-level time buffer in seconds)","type":"string"}},"required":["assetContractAddress","tokenId","buyoutBidAmount","minimumBidAmount"]},"example":{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","quantity":"1","startTimestamp":1686006043038,"endTimestamp":1686610889058,"buyoutBidAmount":"0.00000001","minimumBidAmount":"0.00000001","currencyContractAddress":"0x...","bidBufferBps":100,"timeBufferInSeconds":600}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/close-auction-for-bidder":{"post":{"operationId":"closeEnglishAuctionForBidder","summary":"Close English auction for bidder","tags":["Marketplace-EnglishAuctions"],"description":"After an auction has concluded (and a buyout did not occur),\nexecute the sale for the buyer, meaning the buyer receives the NFT(s). \nYou must also call closeAuctionForSeller to execute the sale for the seller,\nmeaning the seller receives the payment from the highest bid.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to execute the sale for.","type":"string"}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/close-auction-for-seller":{"post":{"operationId":"closeEnglishAuctionForSeller","summary":"Close English auction for seller","tags":["Marketplace-EnglishAuctions"],"description":"After an auction has concluded (and a buyout did not occur),\nexecute the sale for the seller, meaning the seller receives the payment from the highest bid.\nYou must also call closeAuctionForBidder to execute the sale for the buyer, meaning the buyer receives the NFT(s).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to execute the sale for.","type":"string"}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/execute-sale":{"post":{"operationId":"executeEnglishAuctionSale","summary":"Execute sale","tags":["Marketplace-EnglishAuctions"],"description":"Close the auction for both buyer and seller.\nThis means the NFT(s) will be transferred to the buyer and the seller will receive the funds.\nThis function can only be called after the auction has ended.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to execute the sale for.","type":"string"}},"required":["listingId"]},"example":{"listingId":"0"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/english-auctions/make-bid":{"post":{"operationId":"makeEnglishAuctionBid","summary":"Make bid","tags":["Marketplace-EnglishAuctions"],"description":"Place a bid on an English auction listing.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"listingId":{"description":"The ID of the listing to place a bid on.","type":"string"},"bidAmount":{"description":"The amount of the bid to place in the currency of the listing. Use getNextBidAmount to get the minimum amount for the next bid.","type":"string"}},"required":["listingId","bidAmount"]},"example":{"listingId":"0","bidAmount":"0.00000001"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/make-offer":{"post":{"operationId":"makeMarketplaceOffer","summary":"Make offer","tags":["Marketplace-Offers"],"description":"Make an offer on a token. A valid listing is not required.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"assetContractAddress":{"description":"The address of the asset being listed.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"tokenId":{"description":"The ID of the token to list.","type":"string"},"currencyContractAddress":{"description":"The address of the currency to accept for the listing.","type":"string"},"quantity":{"description":"The quantity of tokens to include in the listing. NOTE: For ERC721s, this value should always be 1 (and will be forced internally regardless of what is passed here).","type":"string"},"totalPrice":{"description":"the price to offer in the currency specified","type":"string"},"endTimestamp":{"description":"Defaults to 10 years from now.","minimum":0,"type":"integer"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["assetContractAddress","tokenId","totalPrice"]},"example":{"assetContractAddress":"0x19411143085F1ec7D21a7cc07000CBA5188C5e8e","tokenId":"0","quantity":"1","endTimestamp":1686610889058,"currencyContractAddress":"0x...","totalPrice":"0.00000001"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/cancel-offer":{"post":{"operationId":"cancelMarketplaceOffer","summary":"Cancel offer","tags":["Marketplace-Offers"],"description":"Cancel a valid offer made by the caller wallet.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"offerId":{"description":"The ID of the offer to cancel. You can view all offers with getAll or getAllValid.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["offerId"]},"example":{"offerId":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/marketplace/{chain}/{contractAddress}/offers/accept-offer":{"post":{"operationId":"acceptMarketplaceOffer","summary":"Accept offer","tags":["Marketplace-Offers"],"description":"Accept a valid offer.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"offerId":{"description":"The ID of the offer to accept. You can view all offers with getAll or getAllValid.","type":"string"},"txOverrides":{"type":"object","properties":{"gas":{"type":"string","pattern":"^\\d+$","description":"Gas limit for the transaction","example":"530000"},"gasPrice":{"description":"Gas price for the transaction. Do not use this if maxFeePerGas is set or if you want to use EIP-1559 type transactions. Only use this if you want to use legacy transactions.","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxFeePerGas":{"description":"Maximum fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"maxPriorityFeePerGas":{"description":"Maximum priority fee per gas","type":"string","pattern":"^\\d+$","example":"50000000000"},"gasFeeCeiling":{"description":"Maximum gas fee for the transaction. This is the total maximum gas fee you are willing to pay for the transaction. If the chain gas conditions are worse than this, the transaction will be delayed until the gas conditions are better. If chain gas conditions are better than this, the transaction will be sent immediately. This value is only used to determine if the transaction should be delayed or sent immediately, and is not used to calculate the actual gas fee for the transaction.","type":"string","pattern":"^\\d+$","example":"50000000000"},"timeoutSeconds":{"description":"Maximum duration that a transaction is valid. If a transaction cannot be sent before the timeout, the transaction will be set to 'errored'. Default: no timeout","minimum":1,"maximum":604800,"type":"integer","example":"7200"},"value":{"description":"Amount of native currency in wei to send with this transaction. Used to transfer funds or pay a contract.","type":"string","pattern":"^\\d+$","example":"50000000000"}}}},"required":["offerId"]},"example":{"offerId":"1"}}},"required":true},"parameters":[{"schema":{"default":false,"type":"boolean"},"in":"query","name":"simulateTx","required":false,"description":"Simulates the transaction before adding it to the queue, returning an error if it fails simulation. Note: This step is less performant and recommended only for debugging purposes."},{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"header","name":"x-backend-wallet-address","required":true,"description":"Backend wallet address"},{"schema":{"maxLength":200,"type":"string"},"in":"header","name":"x-idempotency-key","required":false,"description":"Transactions submitted with the same idempotency key will be de-duplicated. Only the last 100000 transactions are compared."},{"schema":{"type":"string","enum":["sponsored"]},"in":"header","name":"x-transaction-mode","required":false,"description":"Transaction mode to use for EOA transactions. Will be ignored if using a smart wallet. If omitted, defaults to regular EOA transactions."},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-address","required":false,"description":"Smart account address"},{"schema":{"examples":[],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"in":"header","name":"x-account-factory-address","required":false,"description":"Smart account factory address. If omitted, Engine will try to resolve it from the contract."},{"schema":{"type":"string"},"in":"header","name":"x-account-salt","required":false,"description":"Smart account salt as string or hex. This is used to predict the smart account address. Useful when creating multiple accounts with the same admin and only needed when deploying the account as part of a userop."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"queueId":{"description":"Queue ID","type":"string"}},"required":["queueId"]}},"required":["result"],"example":{"result":{"queueId":"9eb88b00-f04f-409b-9df7-7dcc9003bc35"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract-subscriptions/get-all":{"get":{"operationId":"getContractSubscriptions","summary":"Get contract subscriptions","tags":["Contract-Subscriptions"],"description":"Get all contract subscriptions.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"type":"integer"},"contractAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"webhook":{"type":"object","properties":{"id":{"type":"integer"},"url":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"secret":{"type":"string"},"eventType":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string"}},"required":["id","url","name","eventType","active","createdAt"]},"processEventLogs":{"type":"boolean"},"filterEvents":{"type":"array","items":{"type":"string"}},"processTransactionReceipts":{"type":"boolean"},"filterFunctions":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string","format":"date"}},"required":["id","chainId","contractAddress","processEventLogs","filterEvents","processTransactionReceipts","filterFunctions","createdAt"]}}},"required":["result"],"example":{"result":[{"chain":"ethereum","contractAddress":"0x....","webhook":{"url":"https://..."}}]}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract-subscriptions/add":{"post":{"operationId":"addContractSubscription","summary":"Add contract subscription","tags":["Contract-Subscriptions"],"description":"Subscribe to event logs and transaction receipts for a contract.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","type":"string","pattern":"^[\\w-]{1,50}$","example":"80002"},"contractAddress":{"description":"The address for the contract.","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"webhookId":{"description":"The ID of an existing webhook to use for this contract subscription. Either `webhookId` or `webhookUrl` must be provided.","type":"number","example":1},"webhookUrl":{"description":"Creates a new webhook to call when new onchain data is detected. Either `webhookId` or `webhookUrl` must be provided.","type":"string","example":"https://example.com/webhook"},"processEventLogs":{"description":"If true, parse event logs for this contract.","type":"boolean"},"filterEvents":{"description":"A case-sensitive list of event names to filter event logs. Parses all event logs by default.","type":"array","items":{"type":"string"},"example":"Transfer"},"processTransactionReceipts":{"description":"If true, parse transaction receipts for this contract.","type":"boolean"},"filterFunctions":{"description":"A case-sensitive list of function names to filter transaction receipts. Parses all transaction receipts by default.","type":"array","items":{"type":"string"},"example":"mintTo"}},"required":["chain","contractAddress","processEventLogs","processTransactionReceipts"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"type":"integer"},"contractAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"webhook":{"type":"object","properties":{"id":{"type":"integer"},"url":{"type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"secret":{"type":"string"},"eventType":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string"}},"required":["id","url","name","eventType","active","createdAt"]},"processEventLogs":{"type":"boolean"},"filterEvents":{"type":"array","items":{"type":"string"}},"processTransactionReceipts":{"type":"boolean"},"filterFunctions":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string","format":"date"}},"required":["id","chainId","contractAddress","processEventLogs","filterEvents","processTransactionReceipts","filterFunctions","createdAt"]}},"required":["result"],"example":{"result":{"chain":1,"contractAddress":"0x....","status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract-subscriptions/remove":{"post":{"operationId":"removeContractSubscription","summary":"Remove contract subscription","tags":["Contract-Subscriptions"],"description":"Remove an existing contract subscription","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"contractSubscriptionId":{"description":"The ID for an existing contract subscription.","type":"string"}},"required":["contractSubscriptionId"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"status":{"type":"string"}},"required":["status"]}},"required":["result"],"example":{"result":{"status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract/{chain}/{contractAddress}/subscriptions/get-indexed-blocks":{"get":{"operationId":"getContractIndexedBlockRange","summary":"Get subscribed contract indexed block range","tags":["Contract-Subscriptions"],"description":"Gets the subscribed contract's indexed block range","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"path","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x000000000000000000000000000000000000dead","in":"path","name":"contractAddress","required":true,"description":"Contract address"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","type":"string","pattern":"^[\\w-]{1,50}$","example":"80002"},"contractAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"fromBlock":{"type":"integer"},"toBlock":{"type":"integer"},"status":{"type":"string"}},"required":["chain","contractAddress","fromBlock","toBlock","status"]}},"required":["result"],"example":{"result":{"chain":"ethereum","contractAddress":"0x....","fromBlock":100,"toBlock":200,"status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/contract-subscriptions/last-block":{"get":{"operationId":"getLatestBlock","summary":"Get last processed block","tags":["Contract-Subscriptions"],"description":"Get the last processed block for a chain.","parameters":[{"schema":{"type":"string","pattern":"^[\\w-]{1,50}$"},"example":"80002","in":"query","name":"chain","required":true,"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"lastBlock":{"type":"integer"},"status":{"type":"string"}},"required":["lastBlock","status"]}},"required":["result"],"example":{"result":{"lastBlock":100,"status":"success"}}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/wallet-subscriptions/get-all":{"get":{"operationId":"getAllWalletSubscriptions","summary":"Get wallet subscriptions","tags":["Wallet-Subscriptions"],"description":"Get all wallet subscriptions.","parameters":[{"schema":{"default":1,"minimum":1,"type":"integer"},"example":1,"in":"path","name":"page","required":true,"description":"Specify the page number."},{"schema":{"default":100,"type":"integer"},"example":100,"in":"path","name":"limit","required":true,"description":"Specify the number of results to return per page."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"description":"The chain ID of the subscription.","type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}},"webhook":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","chainId","walletAddress","conditions","createdAt","updatedAt"]}}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/wallet-subscriptions":{"post":{"operationId":"addWalletSubscription","summary":"Add wallet subscription","tags":["Wallet-Subscriptions"],"description":"Subscribe to wallet conditions.","requestBody":{"content":{"application/json":{"schema":{"allOf":[{"type":"object","properties":{"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","examples":["80002"],"type":"string","pattern":"^[\\w-]{1,50}$"},"walletAddress":{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}}},"required":["chain","walletAddress","conditions"]},{"anyOf":[{"type":"object","properties":{"webhookUrl":{"description":"Webhook URL to create a new webhook","examples":["https://example.com/webhook"],"type":"string"},"webhookLabel":{"description":"Optional label for the webhook when creating a new one","examples":["My Wallet Subscription Webhook"],"minLength":3,"type":"string"}},"required":["webhookUrl"]},{"type":"object","properties":{"webhookId":{"description":"ID of an existing webhook to use","type":"integer"}},"required":["webhookId"]}]}]}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"description":"The chain ID of the subscription.","type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}},"webhook":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","chainId","walletAddress","conditions","createdAt","updatedAt"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}},"/wallet-subscriptions/{subscriptionId}":{"post":{"operationId":"updateWalletSubscription","summary":"Update wallet subscription","tags":["Wallet-Subscriptions"],"description":"Update an existing wallet subscription.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"chain":{"description":"A chain ID (\"137\") or slug (\"polygon-amoy-testnet\"). Chain ID is preferred.","type":"string","pattern":"^[\\w-]{1,50}$","example":"80002"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}},"webhookId":{"anyOf":[{"description":"The ID of an existing webhook to use.","type":"integer"},{"type":"null"}]}}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"subscriptionId","required":true,"description":"The ID of the wallet subscription to update."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"description":"The chain ID of the subscription.","type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}},"webhook":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","chainId","walletAddress","conditions","createdAt","updatedAt"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}},"delete":{"operationId":"deleteWalletSubscription","summary":"Delete wallet subscription","tags":["Wallet-Subscriptions"],"description":"Delete an existing wallet subscription.","parameters":[{"schema":{"type":"string"},"in":"path","name":"subscriptionId","required":true,"description":"The ID of the wallet subscription to update."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"id":{"type":"string"},"chainId":{"description":"The chain ID of the subscription.","type":"string"},"walletAddress":{"description":"A contract or wallet address","type":"string","pattern":"^0x[a-fA-F0-9]{40}$","example":"0x000000000000000000000000000000000000dead"},"conditions":{"maxItems":100,"description":"Array of conditions to monitor for this wallet","type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_lt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]},{"type":"object","properties":{"type":{"type":"string","enum":["token_balance_gt"]},"tokenAddress":{"anyOf":[{"description":"A contract or wallet address","examples":["0x000000000000000000000000000000000000dead"],"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},{"type":"string","enum":["native"]}]},"value":{"description":"The threshold value in wei","examples":["1000000000000000000"],"type":"string"}},"required":["type","tokenAddress","value"]}]}},"webhook":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","chainId","walletAddress","conditions","createdAt","updatedAt"]}},"required":["result"]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"","code":"BAD_REQUEST","statusCode":400}}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction not found with queueId 9eb88b00-f04f-409b-9df7-7dcc9003bc35","code":"NOT_FOUND","statusCode":404}}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"reason":{},"code":{"type":"string"},"stack":{"type":"string"},"statusCode":{"type":"integer"}}}}},"example":{"error":{"message":"Transaction simulation failed with reason: types/values length mismatch","code":"INTERNAL_SERVER_ERROR","statusCode":500}}}}}}}}},"security":[{"bearerAuth":[]}]}