# signatureSubscribe

## signatureSubscribe WebSocket Method

> Subscribe to receive a notification when the transaction with the given signature reaches the specified commitment level. This is a subscription to a single notification that is automatically cancelled by the server once the signatureNotification is sent. Optionally, you can also receive notifications when the signature is first received by the RPC before processing begins. The transaction signature must be the first signature from the transaction.<br>

````json
{"openapi":"3.0.3","info":{"title":"Solana WebSocket API - signatureSubscribe Method","version":"1.0.0"},"tags":[{"name":"Signature Notifications","description":"Methods related to monitoring specific transaction signatures for confirmation. These methods allow you to subscribe to notifications when transactions reach specified commitment levels. Unlike other subscriptions, signature subscriptions are automatically cancelled after the first notification is sent. You can optionally receive notifications when signatures are first received by the RPC before processing begins. This is ideal for tracking transaction confirmation status and building responsive user interfaces.\n"}],"servers":[{"url":"wss://public.rpc.solanavibestation.com","description":"SVS Public WebSocket Node Endpoint"},{"url":"wss://basic.rpc.solanavibestation.com"},{"url":"wss://ultra.rpc.solanavibestation.com"},{"url":"wss://elite.rpc.solanavibestation.com"},{"url":"wss://epic.rpc.solanavibestation.com"},{"url":"wss://basic.swqos.solanavibestation.com"},{"url":"wss://ultra.swqos.solanavibestation.com"},{"url":"wss://elite.swqos.solanavibestation.com"}],"security":[{},{"AuthHeader":[]},{"URLParameter":[]}],"components":{"securitySchemes":{"AuthHeader":{"type":"apiKey","in":"header","name":"Authorization","description":"Authorization header for API key authentication.\n\n**Example:**\n```\nAuthorization: your-api-key-here\n```\n"},"URLParameter":{"type":"apiKey","in":"query","name":"api_key","description":"API key passed as a URL parameter for authentication.\n\n**Example:**\n```\nwss://public.rpc.solanavibestation.com/?api_key=your-api-key-here\n```\n"}},"schemas":{"SignatureSubscribeRequest":{"type":"object","description":"Request object for subscribing to signature notifications via WebSocket","required":["jsonrpc","id","method","params"],"properties":{"jsonrpc":{"type":"string","description":"JSON-RPC protocol version","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"Request identifier that will be returned in the response"},"method":{"type":"string","description":"The WebSocket method name","enum":["signatureSubscribe"]},"params":{"type":"array","description":"Method parameters array containing the transaction signature and optional configuration object\n","minItems":1,"maxItems":2,"items":{"oneOf":[{"type":"string","description":"Transaction signature as base58 encoded string. Must be the first signature from the transaction.\n","pattern":"^[A-HJ-NP-Za-km-z1-9]{87,88}$"},{"$ref":"#/components/schemas/SignatureSubscribeOptions"}]}}}},"SignatureSubscribeOptions":{"type":"object","description":"Optional configuration parameters for signature subscriptions","properties":{"commitment":{"type":"string","description":"Commitment level for querying the state. Higher commitment levels provide more finality but may have higher latency.\n","enum":["processed","confirmed","finalized"],"default":"finalized"},"enableReceivedNotification":{"type":"boolean","description":"Whether or not to subscribe for notifications when signatures are received by the RPC, in addition to when they are processed. If enabled, you will receive a notification with value \"receivedSignature\" when the transaction is first received.\n","default":false}}},"SignatureNotification":{"type":"object","description":"WebSocket notification sent when a signature status changes. This subscription is automatically cancelled after the first notification is sent.\n","required":["jsonrpc","method","params"],"properties":{"jsonrpc":{"type":"string","description":"JSON-RPC protocol version","enum":["2.0"]},"method":{"type":"string","description":"Notification method name indicating this is a signature notification","enum":["signatureNotification"]},"params":{"type":"object","description":"Notification parameters containing the signature status information","required":["result","subscription"],"properties":{"result":{"type":"object","description":"Signature status result data","required":["context","value"],"properties":{"context":{"$ref":"#/components/schemas/Context"},"value":{"$ref":"#/components/schemas/SignatureResult"}}},"subscription":{"type":"integer","description":"Subscription ID that triggered this notification. This subscription is automatically cancelled after this notification is sent.\n","minimum":0}}}}},"Context":{"type":"object","description":"Context information about when the signature notification occurred","required":["slot"],"properties":{"slot":{"type":"integer","description":"The slot number at which this signature notification was generated. Slots represent the fundamental unit of time in Solana.\n","minimum":0}}},"SignatureResult":{"description":"Signature notification result value. Can be either a string indicating the signature was received, or an object containing transaction processing results.\n","oneOf":[{"type":"string","description":"Indicates that the signature was received by the RPC (only sent when enableReceivedNotification is true).\n","enum":["receivedSignature"]},{"type":"object","description":"Transaction processing result containing error information if the transaction failed, or null if it succeeded.\n","required":["err"],"properties":{"err":{"description":"Transaction error if the transaction failed, or null if the transaction succeeded. Contains detailed error information when the transaction processing fails.\n","oneOf":[{"type":"null","description":"Transaction succeeded"},{"type":"object","description":"Transaction error details","additionalProperties":true}]}}}]},"SignatureSubscribeResponse":{"type":"object","description":"Response containing the subscription ID for the signature subscription","required":["jsonrpc","id"],"properties":{"jsonrpc":{"type":"string","description":"JSON-RPC protocol version","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"Request identifier matching the original request"},"result":{"type":"integer","description":"Unique subscription ID for this signature subscription. Note that this subscription will be automatically cancelled by the server once a notification is sent, so manual unsubscription is not necessary.\n","minimum":0},"error":{"$ref":"#/components/schemas/RpcError"}}},"RpcError":{"type":"object","description":"Standard JSON-RPC error object","required":["code","message"],"properties":{"code":{"type":"integer","description":"Numeric error code following JSON-RPC 2.0 specification:\n- `-32700`: Parse error - Invalid JSON was received\n- `-32600`: Invalid request - The JSON sent is not a valid request object\n- `-32601`: Method not found - The method does not exist\n- `-32602`: Invalid params - Invalid method parameter(s)\n- `-32603`: Internal error - Internal JSON-RPC error\n- `-32000`: Server error - Transaction not found or WebSocket connection issues\n- `-32001`: Invalid signature - The provided signature format is invalid\n- `-32002`: Transaction expired - The transaction has expired and will not be processed\n"},"message":{"type":"string","description":"Human-readable error message describing the error"},"data":{"type":"object","description":"Additional structured error information (optional). May contain specific details about what caused the error.\n","additionalProperties":true}}},"ErrorResponse":{"type":"object","description":"JSON-RPC error response for failed requests","required":["jsonrpc","error","id"],"properties":{"jsonrpc":{"type":"string","description":"JSON-RPC protocol version","enum":["2.0"]},"error":{"$ref":"#/components/schemas/RpcError"},"id":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"null"}],"description":"Request identifier from the original request, or null if the request was malformed and no ID could be extracted."}}}}},"paths":{"/":{"post":{"summary":"signatureSubscribe WebSocket Method","description":"Subscribe to receive a notification when the transaction with the given signature reaches the specified commitment level. This is a subscription to a single notification that is automatically cancelled by the server once the signatureNotification is sent. Optionally, you can also receive notifications when the signature is first received by the RPC before processing begins. The transaction signature must be the first signature from the transaction.\n","operationId":"signatureSubscribe","tags":["Signature Notifications"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignatureSubscribeRequest"}}}},"responses":{"101":{"description":"WebSocket notification for signature status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignatureNotification"}}}},"200":{"description":"Subscription successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignatureSubscribeResponse"}}}},"400":{"description":"Bad Request - Invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"text/plain":{"schema":{"type":"string"}}}},"403":{"description":"Forbidden","content":{"text/plain":{"schema":{"type":"string"}}}},"429":{"description":"Too Many Requests","content":{"text/plain":{"schema":{"type":"string"}}}},"500":{"description":"Internal Server Error","content":{"text/plain":{"schema":{"type":"string"}}}}}}}}}
````
