# getRecentPerformanceSamples

## getRecentPerformanceSamples RPC Method

> Returns a list of recent performance samples in reverse slot order (most recent first).\
> Performance samples are collected every 60 seconds and provide detailed metrics about\
> network activity including transaction counts, slot progression, and timing information.\
> \
> Each sample represents a 60-second window of network activity and includes:\
> \- Total number of transactions processed\
> \- Number of non-vote transactions (user-initiated transactions)\
> \- Number of slots that occurred during the sample period\
> \- The slot number when the sample was taken<br>

````json
{"openapi":"3.0.3","info":{"title":"Solana RPC API - getRecentPerformanceSamples Method","version":"1.0.0"},"tags":[{"name":"Network Performance","description":"Methods related to retrieving information about network performance,\nincluding transaction throughput, slot timing, and network health metrics.\n"}],"servers":[{"url":"https://public.rpc.solanavibestation.com"},{"url":"https://basic.rpc.solanavibestation.com"},{"url":"https://ultra.rpc.solanavibestation.com"},{"url":"https://elite.rpc.solanavibestation.com"},{"url":"https://epic.rpc.solanavibestation.com"},{"url":"https://basic.swqos.solanavibestation.com"},{"url":"https://ultra.swqos.solanavibestation.com"},{"url":"https://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```\nhttps://public.rpc.solanavibestation.com/?api_key=your-api-key-here\n```\n"}},"schemas":{"GetRecentPerformanceSamplesRequest":{"type":"object","required":["jsonrpc","id","method"],"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 RPC method name","enum":["getRecentPerformanceSamples"]},"params":{"type":"array","description":"Method parameters (optional):\n\n1. Number of samples to return (optional, maximum 720)\n","minItems":0,"maxItems":1,"items":{"type":"integer","minimum":1,"maximum":720,"description":"Number of performance samples to return (maximum 720, which represents 12 hours of data)"}}}},"GetRecentPerformanceSamplesResponse":{"type":"object","description":"RPC response containing recent performance samples","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":"array","description":"Array of performance sample objects in reverse slot order (most recent first).\nEach sample represents a 60-second window of network activity with detailed\ntransaction and slot metrics.\n","items":{"$ref":"#/components/schemas/PerformanceSampleObject"}},"error":{"$ref":"#/components/schemas/RpcError"}}},"PerformanceSampleObject":{"type":"object","description":"Performance sample data for a specific time period","required":["slot","numTransactions","numSlots","samplePeriodSecs","numNonVoteTransactions"],"properties":{"slot":{"type":"integer","format":"int64","description":"The slot number at which this performance sample was taken.\nThis represents the ending slot of the sampling period.\n","minimum":0},"numTransactions":{"type":"integer","format":"int64","description":"Total number of transactions processed during the sample period,\nincluding both user transactions and validator vote transactions.\nThis is the key metric for calculating overall TPS.\n","minimum":0},"numSlots":{"type":"integer","format":"int64","description":"Number of slots that occurred during the sample period.\nExpected to be around 150 slots for a 60-second period (2.5 slots/second).\nDeviations indicate network timing issues.\n","minimum":0},"samplePeriodSecs":{"type":"integer","format":"int64","description":"Duration of the sampling period in seconds. This is typically 60 seconds\nfor all samples, representing the standard performance monitoring interval.\n","minimum":1},"numNonVoteTransactions":{"type":"integer","format":"int64","description":"Number of non-vote transactions (user-initiated transactions) processed\nduring the sample period. This excludes validator consensus votes and\nrepresents actual user activity on the network.\n","minimum":0}}},"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\n- `-32600`: Invalid request\n- `-32601`: Method not found\n- `-32602`: Invalid params (e.g., sample count exceeds 720)\n- `-32603`: Internal error\n- `-32005`: Too Many Requests\n- `-32003`: Unauthorized\n"},"message":{"type":"string","description":"Human-readable error message"},"data":{"type":"object","description":"Additional structured error information (optional)","additionalProperties":true}}}}},"paths":{"/":{"post":{"summary":"getRecentPerformanceSamples RPC Method","description":"Returns a list of recent performance samples in reverse slot order (most recent first).\nPerformance samples are collected every 60 seconds and provide detailed metrics about\nnetwork activity including transaction counts, slot progression, and timing information.\n\nEach sample represents a 60-second window of network activity and includes:\n- Total number of transactions processed\n- Number of non-vote transactions (user-initiated transactions)\n- Number of slots that occurred during the sample period\n- The slot number when the sample was taken\n","operationId":"getRecentPerformanceSamples","tags":["Network Performance"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRecentPerformanceSamplesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRecentPerformanceSamplesResponse"}}}},"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"}}}}}}}}}
````
