{"openapi":"3.1.0","info":{"title":"API","version":"1.0.0"},"paths":{"/admin/project":{"post":{"operationId":"apiKeyManager_admin_createProject","summary":"Create Project","description":"Create a new project. Only available with environment wide API keys.","tags":["api-key-manager > admin"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Project"}}}},"400":{"description":"Error response with status 400"},"403":{"description":"Error response with status 403"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_CreateProjectRequest"}}}},"security":[{"default":[]}]}},"/admin/project/{projectId}/updateName":{"post":{"operationId":"apiKeyManager_admin_updateProjectName","summary":"Update Project Name","description":"Update a project name","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Project"}}}},"400":{"description":"Error response with status 400"},"401":{"description":"Error response with status 401"},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_UpdateProjectNameRequest"}}}},"security":[{"default":[]}]}},"/admin/project/{projectId}":{"get":{"operationId":"apiKeyManager_admin_getProject","summary":"Get Project","description":"Get a specific project","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Project"}}}},"401":{"description":"Error response with status 401"}},"security":[{"default":[]}]}},"/admin/contract/authorizeWithFunctionSignatures":{"post":{"operationId":"apiKeyManager_admin_authorizeContractWithFunctionSignatures","summary":"Authorize Contract With Function Signatures","description":"Authorize a contract with function signatures","tags":["api-key-manager > admin"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Contract"}}}},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"409":{"description":"Error response with status 409"},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_AuthorizeContractWithFunctionSignaturesRequest"}}}},"security":[{"default":[]}]}},"/admin/contract/authorizeWithJSONABI":{"post":{"operationId":"apiKeyManager_admin_authorizeContractWithJSONABI","summary":"Authorize Contract With JSONABI","description":"Authorize a contract and its corresponding function signatures using the JSON ABI format.","tags":["api-key-manager > admin"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Contract"}}}},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"409":{"description":"Error response with status 409"},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_AuthorizeContractWithJSONABIRequest"}}}},"security":[{"default":[]}]}},"/admin/project/{projectId}/contract/{chainId}/{contractAddress}/claim":{"post":{"operationId":"apiKeyManager_admin_claimContract","summary":"Claim Contract","description":"Claim a contract. This contract must be authorized in your project first. See [Authorize Contract with Function Signatures](https://docs.syndicate.io/open-api/admin/authorize-with-fn-sigs) to authorize a contract in your project.","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"chainId","in":"path","required":true,"schema":{"type":"integer"}},{"name":"contractAddress","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_Contract"}}}},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"security":[{"default":[]}]}},"/admin/project/{projectId}/contract/{contractId}":{"delete":{"operationId":"apiKeyManager_admin_deleteContract","summary":"Delete Contract","description":"Delete a contract","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"contractId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response"},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"security":[{"default":[]}]}},"/admin/project/{projectId}/functionSignature/{functionSignatureId}":{"delete":{"operationId":"apiKeyManager_admin_deleteFunctionSignature","summary":"Delete Function Signature","description":"Delete a function signature","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"functionSignatureId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response"},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"security":[{"default":[]}]}},"/admin/allowedIP":{"post":{"operationId":"apiKeyManager_admin_createAllowedIPRange","summary":"Create Allowed IP Range","description":"Create an IP range allowlist","tags":["api-key-manager > admin"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_AllowlistIpRange"}}}},"400":{"description":"Error response with status 400"},"401":{"description":"Error response with status 401"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/apiKeyManager_admin_CreateAllowedIPRangeRequest"}}}},"security":[{"default":[]}]}},"/admin/project/{projectId}/allowedIPRanges":{"get":{"operationId":"apiKeyManager_admin_getProjectAllowedIPRanges","summary":"Get Project Allowed IP Ranges","description":"Get allowed IP ranges by project ID","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/apiKeyManager_admin_AllowlistIpRange"}}}}},"401":{"description":"Error response with status 401"}},"security":[{"default":[]}]}},"/admin/project/{projectId}/allowedIP/{IPId}":{"delete":{"operationId":"apiKeyManager_admin_deleteAllowedIPRange","summary":"Delete Allowed IP Range","description":"Delete an IP range allowlist","tags":["api-key-manager > admin"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"IPId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response"},"400":{"description":"Error response with status 400"},"404":{"description":"Error response with status 404"},"500":{"description":"Error response with status 500"}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/personalSign":{"post":{"operationId":"wallet_personalSign","summary":"Personal Sign","description":"Sign EIP191 compliant message","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_SignatureResponse"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}},"500":{"description":"Error response with status 500","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_PersonalSignRequest"}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/signTypedData":{"post":{"operationId":"wallet_signTypedData","summary":"Sign Typed Data","description":"Sign EIP712 compliant typed data","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_SignatureResponse"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}},"500":{"description":"Error response with status 500","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_SignTypedDataRequest"}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/signTypedDataWithLookup":{"post":{"operationId":"wallet_signTypedDataWithLookup","summary":"Sign Typed Data With Lookup","description":"Sign EIP712 compliant typed data after asserting all lookups are valid. Lookups can be view or pure functions on smart contracts. Responses are compared to specified values in the request.","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_SignatureResponse"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}},"500":{"description":"Error response with status 500","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_SignTypedDataWithLookupRequest"}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/personalSignatures":{"get":{"operationId":"wallet_getProjectPersonalSignatures","summary":"Get Project Personal Signatures","description":"Get EIP191 personal signatures for a project","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_MessageSignature"}}}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/personalSignature/{signatureId}":{"get":{"operationId":"wallet_getPersonalSignature","summary":"Get Personal Signature","description":"Get a personal signature by ID","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"signatureId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_MessageSignature"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/signatures":{"get":{"operationId":"wallet_getProjectSignatures","summary":"Get Project Signatures","description":"Get EIP712 typed data signatures for a project","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_Signature"}}}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/signature/{signatureId}":{"get":{"operationId":"wallet_getSignature","summary":"Get Signature","description":"Get a typed data signature by ID","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"signatureId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_Signature"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_ErrorBody"}}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/request/{transactionId}":{"get":{"operationId":"wallet_getTransactionRequest","summary":"Get Transaction Request","description":"Get a transaction request by id","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"transactionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_TransactionResponse"}}}},"404":{"description":"Error response with status 404"}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/requests":{"get":{"operationId":"wallet_getTransactionRequestsByProject","summary":"Get Transaction Requests By Project","description":"Gets a list of transaction requests for a project","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"search","in":"query","description":"Optional search parameter will filter by function signature, contract address, or transaction id","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_TransactionRequestsByProjectResponse"}}}},"404":{"description":"Error response with status 404"}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/transactions":{"get":{"operationId":"wallet_getTransactionsByProject","summary":"Get Transactions By Project","description":"Gets a list of transaction attempts for a project","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"search","in":"query","description":"Optional search parameter will filter by transaction hash, wallet address, or transaction id","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"}},{"name":"reverted","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"status","in":"query","required":false,"schema":{"$ref":"#/components/schemas/wallet_AttemptStatus"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/wallet_TransactionsByProjectResponse"}}}}},"security":[{"default":[]}]}},"/transact/sendTransaction":{"post":{"operationId":"transact_sendTransaction","summary":"Send Transaction","description":"Send transaction to blockchain","tags":["transact"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"$ref":"#/components/schemas/transact_SendTransactionResponse"}}}},"400":{"description":"Error response with status 400","content":{"application/json":{"schema":{"$ref":"#/components/schemas/transact_ErrorBody"}}}},"409":{"description":"Error response with status 409","content":{"application/json":{"schema":{"$ref":"#/components/schemas/transact_ErrorBody"}}}},"422":{"description":"Error response with status 422","content":{"application/json":{"schema":{"$ref":"#/components/schemas/transact_ErrorBody"}}}},"500":{"description":"Error response with status 500"}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/transact_SendTransactionRequest"}}}},"security":[{"default":[]}]}},"/transact/call":{"post":{"operationId":"call_call","summary":"Call View Function","description":"Read data from a view function on a smart contract","tags":["call"],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/call_ReadContractRequest"}}}},"security":[{"default":[]}]}},"/wallet/project/{projectId}/wallets":{"get":{"operationId":"wallet_getWalletsByProject","summary":"Get Wallets By Project","description":"Gets a list of wallets for a project","tags":["wallet"],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"withData","in":"query","description":"Optional parameter to return this address's balance and total count of confirmed transactions","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Response with status 200","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/wallet_WalletWithTxCountAndBalance"}}}}},"500":{"description":"Error response with status 500"}},"security":[{"default":[]}]}}},"tags":[{"name":"api-key-manager > admin"},{"name":"wallet"},{"name":"transact"},{"name":"call"}],"servers":[{"url":"https://api.syndicate.io","description":"Production"}],"components":{"schemas":{"apiKeyManager_admin_ProjectEnvironment":{"type":"string","enum":["staging","production"],"title":"ProjectEnvironment"},"apiKeyManager_admin_CreateProjectRequest":{"type":"object","properties":{"name":{"type":"string"},"environment":{"$ref":"#/components/schemas/apiKeyManager_admin_ProjectEnvironment"},"chainId":{"type":"integer"},"organizationId":{"type":"string","format":"uuid"},"numWallets":{"type":"integer","description":"Number of wallets to create for the project. Defaults to 1. Max is 10."}},"required":["name","environment","chainId","organizationId"],"title":"CreateProjectRequest"},"apiKeyManager_admin_FunctionSignature":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"signature":{"type":"string"},"functionAbi":{"description":"JSON ABI of the function signature. Null if function signature is unable to be parsed."},"hashedSignature":{"type":"string"},"contractId":{"type":"string","format":"uuid"},"payable":{"type":"boolean"}},"required":["id","createdAt","signature","hashedSignature","contractId","payable"],"title":"FunctionSignature"},"apiKeyManager_admin_Contract":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"chainId":{"type":"integer"},"address":{"type":"string"},"name":{"type":"string"},"expiresAt":{"type":"string","format":"date-time"},"functionSignatures":{"type":"array","items":{"$ref":"#/components/schemas/apiKeyManager_admin_FunctionSignature"}},"projectId":{"type":"string","format":"uuid"},"claimedByOrganizationId":{"type":"string","format":"uuid"}},"required":["id","createdAt","chainId","address","name","functionSignatures","projectId"],"title":"Contract"},"apiKeyManager_admin_AllowlistIpRange":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"ipRange":{"type":"string"},"projectId":{"type":"string","format":"uuid"}},"required":["id","createdAt","ipRange","projectId"],"title":"AllowlistIpRange"},"apiKeyManager_admin_Project":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"name":{"type":"string"},"environment":{"$ref":"#/components/schemas/apiKeyManager_admin_ProjectEnvironment"},"organizationId":{"type":"string","format":"uuid"},"contracts":{"type":"array","items":{"$ref":"#/components/schemas/apiKeyManager_admin_Contract"}},"allowlistIpRanges":{"type":"array","items":{"$ref":"#/components/schemas/apiKeyManager_admin_AllowlistIpRange"}}},"required":["id","createdAt","name","environment","organizationId","contracts","allowlistIpRanges"],"title":"Project"},"apiKeyManager_admin_UpdateProjectNameRequest":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"],"title":"UpdateProjectNameRequest"},"apiKeyManager_admin_AuthorizeContractWithFunctionSignaturesRequest":{"type":"object","properties":{"chainId":{"type":"integer"},"address":{"type":"string"},"name":{"type":"string"},"projectId":{"type":"string","format":"uuid"},"expiresAt":{"type":"string","format":"date-time"},"functionSignatures":{"type":"array","items":{"type":"string"}}},"required":["chainId","address","name","projectId","functionSignatures"],"title":"AuthorizeContractWithFunctionSignaturesRequest"},"apiKeyManager_admin_AuthorizeContractWithJSONABIRequest":{"type":"object","properties":{"chainId":{"type":"integer"},"address":{"type":"string"},"name":{"type":"string"},"projectId":{"type":"string","format":"uuid"},"expiresAt":{"type":"string","format":"date-time"},"abi":{"type":"array","items":{"description":"Any type"}}},"required":["chainId","address","name","projectId","abi"],"title":"AuthorizeContractWithJSONABIRequest"},"apiKeyManager_admin_CreateAllowedIPRangeRequest":{"type":"object","properties":{"projectId":{"type":"string"},"ipRange":{"type":"string","description":"The IP range to allow, specified in CIDR notation."},"note":{"type":"string","description":"Must be alphanumeric and may include spaces, . ! ? , ' -"}},"required":["projectId","ipRange"],"title":"CreateAllowedIPRangeRequest"},"wallet_PersonalSignRequest":{"type":"object","properties":{"signatureId":{"type":"string","format":"uuid","description":"(Optional) ID of the request. Needs to be a valid UUID. If provided, it will be saved and returned as the signatureId of the response. If not provided, we will generate one for you and return it as the signatureId."},"signerAddress":{"type":"string","description":"Address of a project wallet that will be used to sign the 'message'."},"message":{"type":"string","description":"Data to be signed by the 'signerAddress'"}},"required":["signerAddress","message"],"title":"PersonalSignRequest"},"wallet_SignatureResponse":{"type":"object","properties":{"message":{"description":"The raw data requested to be signed."},"signature":{"type":"string","description":"The signature of 'message' by the 'signerAddress'."},"signerAddress":{"type":"string","description":"The address of the signer of the 'signature'."},"signatureId":{"type":"string","format":"uuid","description":"UUID of the signature request."}},"required":["message","signature","signerAddress","signatureId"],"title":"SignatureResponse"},"wallet_ErrorBody":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"title":"ErrorBody"},"wallet_EIP712Domain":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"chainId":{"type":"integer"},"verifyingContract":{"type":"string"},"salt":{"type":"string"}},"required":["chainId"],"title":"EIP712Domain"},"wallet_EIP712Types":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"}},"required":["name","type"],"title":"EIP712Types"},"wallet_SignTypedDataRequest":{"type":"object","properties":{"signatureId":{"type":"string","format":"uuid","description":"(Optional) ID of the request. Needs to be a valid UUID. If provided, it will be saved and returned as the signatureId of the response. If not provided, we will generate one for you and return it as the signatureId."},"signerAddress":{"type":"string","description":"Address of a project wallet that will be used to sign the 'message'."},"message":{"type":"object","additionalProperties":{"description":"Any type"},"description":"Data to be signed by the 'signerAddress'. The message's structure must be correctly defined in the 'types' mapping, specified by the 'primaryType'."},"domain":{"$ref":"#/components/schemas/wallet_EIP712Domain","description":"Components of the [domain seperator](https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator). At least one field is required."},"types":{"type":"object","additionalProperties":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_EIP712Types"}},"description":"Type definitions of the domain and data you are requesting signature of. At minimum you must define the domain with key 'EIP712Domain' and the type of your message with key specified by 'primaryType'. More information [here](https://eips.ethereum.org/EIPS/eip-712#definition-of-typed-structured-data-%F0%9D%95%8A)."},"primaryType":{"type":"string","description":"Specifies the name of the key in 'types' that describes the shape of the 'message'."}},"required":["signerAddress","message","domain","types","primaryType"],"title":"SignTypedDataRequest"},"wallet_LookupOperation":{"type":"string","enum":["eq","gt","lt"],"title":"LookupOperation"},"wallet_LookupType":{"type":"string","enum":["contract"],"title":"LookupType"},"wallet_ContractLookup":{"type":"object","properties":{"value":{"type":"string"},"operation":{"$ref":"#/components/schemas/wallet_LookupOperation"},"type":{"$ref":"#/components/schemas/wallet_LookupType"},"contractAddress":{"type":"string","description":"The contract address to send request to"},"functionSignature":{"type":"string","description":"The human readable signature to call on the contract"},"args":{"type":"object","additionalProperties":{"description":"Any type"},"description":"(Optional) The function arguments for the read contract call. The keys are the argument names or index from the provided 'functionSignature' and the values are the argument values."},"chainId":{"type":"integer","description":"The chain ID for the network (e.g. 1 for Ethereum Mainnet, 137 for Polygon Mainnet, 80001 for Polygon Mumbai). For a complete list of chain IDs, see [ChainList](https://chainlist.org/?search=&testnets=true)."}},"required":["value","operation","type","contractAddress","functionSignature","chainId"],"description":"Specify a pure or view function on a contract at 'contractAddress' on a specific 'chainId' to read data from. 'args' are optional, but must be passed if specified in the human readable 'functionSignature'","title":"ContractLookup"},"wallet_Lookup":{"$ref":"#/components/schemas/wallet_ContractLookup","description":"Smart contract call with operation and value to make an assertion about onchain data. Supported operations are equal to (eq), greater than (gt), and less than (lt). The data returned by the contract in conjunction with the specified 'operation' and 'value' must be valid to receive a signature.","title":"Lookup"},"wallet_SignTypedDataWithLookupRequest":{"type":"object","properties":{"signatureId":{"type":"string","format":"uuid","description":"(Optional) ID of the request. Needs to be a valid UUID. If provided, it will be saved and returned as the signatureId of the response. If not provided, we will generate one for you and return it as the signatureId."},"signerAddress":{"type":"string","description":"Address of a project wallet that will be used to sign the 'message'."},"message":{"type":"object","additionalProperties":{"description":"Any type"},"description":"Data to be signed by the 'signerAddress'. The message's structure must be correctly defined in the 'types' mapping, specified by the 'primaryType'."},"domain":{"$ref":"#/components/schemas/wallet_EIP712Domain","description":"Components of the [domain seperator](https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator). At least one field is required."},"types":{"type":"object","additionalProperties":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_EIP712Types"}},"description":"Type definitions of the domain and data you are requesting signature of. At minimum you must define the domain with key 'EIP712Domain' and the type of your message with key specified by 'primaryType'. More information [here](https://eips.ethereum.org/EIPS/eip-712#definition-of-typed-structured-data-%F0%9D%95%8A)."},"primaryType":{"type":"string","description":"Specifies the name of the key in 'types' that describes the shape of the 'message'."},"lookups":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_Lookup"},"description":"Specify a maximum of 5 contract lookups to compare data with. All lookups must be valid to receive a signature by the 'signerAddress'."}},"required":["signerAddress","message","domain","types","primaryType","lookups"],"title":"SignTypedDataWithLookupRequest"},"wallet_MessageSignature":{"type":"object","properties":{"signatureId":{"type":"string","format":"uuid"},"projectId":{"type":"string","format":"uuid"},"walletAddress":{"type":"string"},"chainId":{"type":"integer"},"message":{"type":"string"},"signature":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}},"required":["signatureId","projectId","walletAddress","chainId","message","signature","createdAt"],"title":"MessageSignature"},"wallet_Signature":{"type":"object","properties":{"signatureId":{"type":"string","format":"uuid"},"projectId":{"type":"string","format":"uuid"},"walletAddress":{"type":"string"},"domain":{"$ref":"#/components/schemas/wallet_EIP712Domain"},"types":{"type":"object","additionalProperties":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_EIP712Types"}}},"message":{"type":"object","additionalProperties":{"description":"Any type"}},"primaryType":{"type":"string"},"signature":{"type":"string"},"lookups":{"type":"array","uniqueItems":true,"items":{"$ref":"#/components/schemas/wallet_Lookup"}},"createdAt":{"type":"string","format":"date-time"}},"required":["signatureId","projectId","walletAddress","domain","types","message","primaryType","signature","createdAt"],"title":"Signature"},"wallet_AttemptStatus":{"type":"string","enum":["PENDING","PROCESSED","SUBMITTED","CONFIRMED","PAUSED","ABANDONED"],"title":"AttemptStatus"},"wallet_TransactionAttempt":{"type":"object","properties":{"transactionId":{"type":"string"},"hash":{"type":"string"},"chainId":{"type":"integer"},"version":{"type":"integer"},"status":{"$ref":"#/components/schemas/wallet_AttemptStatus"},"block":{"type":"integer"},"blockCreatedAt":{"type":"string","format":"date-time"},"signedTxn":{"type":"string"},"walletAddress":{"type":"string"},"reverted":{"type":"boolean"},"nonce":{"type":"integer"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["transactionId","hash","chainId","version","status","block","signedTxn","walletAddress","reverted","nonce","createdAt","updatedAt"],"title":"TransactionAttempt"},"wallet_TransactionResponse":{"type":"object","properties":{"transactionId":{"type":"string"},"chainId":{"type":"integer"},"projectId":{"type":"string"},"invalid":{"type":"boolean"},"contractAddress":{"type":"string"},"functionSignature":{"type":"string"},"data":{"type":"string","description":"ABI encoded representation of the function name and parameters passed as input"},"decodedData":{"type":"object","additionalProperties":{"description":"Any type"},"description":"Decoded function arguments passed as input to the contract's function identified by 'functionSignature'"},"value":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"transactionAttempts":{"type":"array","items":{"$ref":"#/components/schemas/wallet_TransactionAttempt"}}},"required":["transactionId","chainId","projectId","invalid","contractAddress","functionSignature","data","value","createdAt","updatedAt"],"title":"TransactionResponse"},"wallet_TransactionRequestsByProjectResponse":{"type":"object","properties":{"transactionRequests":{"type":"array","items":{"$ref":"#/components/schemas/wallet_TransactionResponse"}},"total":{"type":"integer"}},"required":["transactionRequests","total"],"title":"TransactionRequestsByProjectResponse"},"wallet_TransactionsByProjectResponse":{"type":"object","properties":{"transactionAttempts":{"type":"array","items":{"$ref":"#/components/schemas/wallet_TransactionAttempt"}},"total":{"type":"integer"}},"required":["transactionAttempts","total"],"title":"TransactionsByProjectResponse"},"transact_SendTransactionRequest":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid","description":"(Optional) ID of the request. Needs to be a valid UUID. If provided, it will be saved and returned as the transactionId of the response. If not provided, we will generate one for you and return it as the transactionId."},"projectId":{"type":"string","format":"uuid","description":"ID of the project you want this request to be sent from"},"contractAddress":{"type":"string","description":"The contract address to send request to"},"chainId":{"type":"integer","format":"int64","description":"The chain ID for the network (e.g. 1 for Ethereum Mainnet, 137 for Polygon Mainnet, 80001 for Polygon Mumbai). For a complete list of chain IDs, see [ChainList](https://chainlist.org/?search=&testnets=true)."},"functionSignature":{"type":"string","description":"The human readable signature to call on the contract"},"args":{"type":"object","additionalProperties":{"description":"Any type"},"description":"(Optional) The function arguments for the transaction if any. The keys are the argument names or index from the provided function signature and the values are the argument values."}},"required":["projectId","contractAddress","chainId","functionSignature"],"title":"SendTransactionRequest"},"transact_SendTransactionResponse":{"type":"object","properties":{"transactionId":{"type":"string","format":"uuid"}},"required":["transactionId"],"title":"SendTransactionResponse"},"transact_ErrorBody":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"title":"ErrorBody"},"call_ReadContractRequest":{"type":"object","properties":{"chainId":{"type":"integer","format":"int64","description":"The chain ID for the network"},"functionSignature":{"type":"string","description":"The human readable ABI function signature you want to call"},"contractAddress":{"type":"string","description":"The contract address to read from"},"args":{"type":"object","additionalProperties":{"description":"Any type"},"description":"(Optional) The function arguments if any. The keys are the argument names or index from the provided function signature and the values are the argument values"}},"required":["chainId","functionSignature","contractAddress"],"title":"ReadContractRequest"},"wallet_WalletStatus":{"type":"string","enum":["ACTIVE","INACTIVE","DESTROYED"],"title":"WalletStatus"},"wallet_WalletType":{"type":"string","enum":["BROADCAST","SIGNING"],"title":"WalletType"},"wallet_WalletWithTxCountAndBalance":{"type":"object","properties":{"walletId":{"type":"string","format":"uuid"},"walletAddress":{"type":"string"},"chainId":{"type":"integer"},"nonce":{"type":"integer"},"status":{"$ref":"#/components/schemas/wallet_WalletStatus"},"projectId":{"type":"string","format":"uuid"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"walletType":{"$ref":"#/components/schemas/wallet_WalletType"},"txCount":{"type":"integer","description":"Number of confirmed transactions submitted by this address"},"balance":{"type":"string","description":"Balance in wei of this address's native gas token, as defined by chainId"}},"required":["walletId","walletAddress","chainId","nonce","status","projectId","createdAt","updatedAt","walletType"],"title":"WalletWithTxCountAndBalance"}},"securitySchemes":{"default":{"type":"http","scheme":"bearer"}}}}