> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# getShieldedTransactionsBySignature

> Retrieve indexed shielded events for a Solana transaction signature.

## Events in a Transaction

The response returns `result.transactions`, ordered by `eventIndex`. Each entry contains the event index and a shielded transaction with encrypted outputs, messages, and nullifiers. One Solana transaction can contain multiple shielded events.

An empty `transactions` array means the indexer has no matching shielded events. Check `context.slot` before treating a recently submitted transaction as absent. This method does not use pagination.

## Request Parameters

**txSignature** `string` *required*

Base58-encoded 64-byte Solana transaction signature.


## OpenAPI

````yaml openapi/privacy/getShieldedTransactionsBySignature.yaml POST /v1/spr/getShieldedTransactionsBySignature
openapi: 3.0.3
info:
  title: Solana Privacy Rings API
  version: 0.51.2
  description: >-
    Privacy indexer JSON-RPC API for encrypted state, history, proofs, and
    public registry records.
servers:
  - url: https://devnet.helius-rpc.com
    description: Devnet Solana Privacy Rings API
security: []
paths:
  /v1/spr/getShieldedTransactionsBySignature:
    post:
      summary: getShieldedTransactionsBySignature
      description: Retrieve indexed shielded events for a Solana transaction signature.
      operationId: getShieldedTransactionsBySignature
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - jsonrpc
                - id
                - method
                - params
              properties:
                id:
                  type: string
                  description: An ID to identify the request.
                  default: '1'
                jsonrpc:
                  type: string
                  description: The JSON-RPC protocol version.
                  enum:
                    - '2.0'
                  default: '2.0'
                method:
                  type: string
                  description: The method to invoke. Must match the final URL path segment.
                  enum:
                    - getShieldedTransactionsBySignature
                  default: getShieldedTransactionsBySignature
                params:
                  type: object
                  required:
                    - txSignature
                  properties:
                    txSignature:
                      allOf:
                        - $ref: '#/components/schemas/SerializableSignature'
                      description: Base58-encoded 64-byte Solana transaction signature.
                  additionalProperties: false
                  example:
                    txSignature: >-
                      555555555555555555555555555555555555555555555555555555555555555555555555555555555555555
            example:
              jsonrpc: '2.0'
              id: '1'
              method: getShieldedTransactionsBySignature
              params:
                txSignature: >-
                  555555555555555555555555555555555555555555555555555555555555555555555555555555555555555
        required: true
      responses:
        '200':
          description: JSON-RPC response. Inspect error before reading result.
          content:
            application/json:
              schema:
                type: object
                required:
                  - jsonrpc
                  - id
                properties:
                  error:
                    type: object
                    required:
                      - code
                      - message
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data:
                        type: object
                        additionalProperties: true
                  id:
                    type: string
                    description: The request ID.
                  jsonrpc:
                    type: string
                    description: The version of the JSON-RPC protocol.
                    enum:
                      - '2.0'
                  result:
                    type: object
                    required:
                      - context
                      - transactions
                    properties:
                      context:
                        $ref: '#/components/schemas/Context'
                      outputTreeId:
                        type: integer
                        format: uint16
                        description: >-
                          The newest unpaused state tree ID. Omitted when
                          unavailable.
                        minimum: 0
                      transactions:
                        type: array
                        items:
                          $ref: '#/components/schemas/IndexedShieldedTransaction'
              example:
                jsonrpc: '2.0'
                id: '1'
                result:
                  context:
                    slot: 4242
                    blockTime: 1730000000
                  transactions: []
        '400':
          description: >-
            Rejected before execution. A method/path mismatch, duplicate method
            fields, or a batch request returns -32601. An unreadable or
            oversized body returns -32600.
          content:
            application/json:
              schema:
                type: object
                required:
                  - jsonrpc
                  - id
                  - error
                properties:
                  jsonrpc:
                    type: string
                    enum:
                      - '2.0'
                  id:
                    type: string
                    nullable: true
                    description: >-
                      The request id, or null when the body is not a single
                      JSON-RPC call.
                  error:
                    type: object
                    required:
                      - code
                      - message
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data:
                        type: object
                        additionalProperties: true
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                type: object
                required:
                  - jsonrpc
                  - id
                  - error
                properties:
                  jsonrpc:
                    type: string
                    enum:
                      - '2.0'
                  id:
                    type: string
                    nullable: true
                    description: >-
                      The request id, or null when the body is not a single
                      JSON-RPC call.
                  error:
                    type: object
                    required:
                      - code
                      - message
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data:
                        type: object
                        additionalProperties: true
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                required:
                  - jsonrpc
                  - id
                  - error
                properties:
                  jsonrpc:
                    type: string
                    enum:
                      - '2.0'
                  id:
                    type: string
                    nullable: true
                    description: >-
                      The request id, or null when the body is not a single
                      JSON-RPC call.
                  error:
                    type: object
                    required:
                      - code
                      - message
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data:
                        type: object
                        additionalProperties: true
      security:
        - ApiKeyQuery: []
components:
  schemas:
    SerializableSignature:
      type: string
      description: A base58-encoded 64-byte Solana transaction signature.
    Context:
      type: object
      required:
        - blockTime
        - slot
      properties:
        blockTime:
          type: integer
          format: int64
        slot:
          type: integer
          format: uint64
          description: >-
            Highest slot the indexer has persisted, for slot-based freshness
            checks.
          minimum: 0
    IndexedShieldedTransaction:
      type: object
      required:
        - eventIndex
        - transaction
      properties:
        eventIndex:
          type: integer
          format: uint16
          minimum: 0
        transaction:
          $ref: '#/components/schemas/ShieldedTransaction'
    ShieldedTransaction:
      type: object
      required:
        - slot
        - txSignature
        - txViewingPk
        - salt
        - outputSlots
        - messages
        - nullifiers
        - proofless
      properties:
        eventIndex:
          type: integer
          format: uint16
          minimum: 0
        messages:
          type: array
          items:
            $ref: '#/components/schemas/RingsMessage'
          description: >-
            Published data slots bound to no output commitment, republished
            verbatim.
        nullifiers:
          type: array
          items:
            $ref: '#/components/schemas/Hash'
        outputSlots:
          type: array
          items:
            $ref: '#/components/schemas/RingsOutputSlot'
        proofless:
          type: boolean
          description: True when at least one output in this transaction is proofless.
        ringConfig:
          type: string
          description: >-
            The ring's config account (its `ring_auth` PDA). Omitted when no
            ring authorized this transaction.
        ringProgramId:
          type: string
          description: >-
            The ring's program, resolved through the indexed registrations.
            Omitted when `ringConfig` is omitted or the ring's registration has
            not been indexed. Use `ringConfig` to tell "no ring" apart from
            "ring with an unindexed program".
        salt:
          type: string
          description: Transaction-level AES salt shared by every output ciphertext.
          nullable: true
        slot:
          type: integer
          format: uint64
          minimum: 0
        txSignature:
          $ref: '#/components/schemas/SerializableSignature'
        txViewingPk:
          type: string
          description: A base64-encoded byte string.
          nullable: true
    RingsMessage:
      type: object
      required:
        - viewTag
        - payload
      properties:
        payload:
          $ref: '#/components/schemas/Base64String'
        viewTag:
          $ref: '#/components/schemas/Hash'
    Hash:
      type: string
      description: A base58-encoded 32-byte hash.
    RingsOutputSlot:
      type: object
      required:
        - viewTag
        - outputContext
        - payload
      properties:
        outputContext:
          $ref: '#/components/schemas/RingsOutputContext'
        payload:
          $ref: '#/components/schemas/Base64String'
        viewTag:
          $ref: '#/components/schemas/Hash'
    Base64String:
      type: string
      description: A base64-encoded byte string.
    RingsOutputContext:
      type: object
      required:
        - hash
        - tree
        - treeId
        - leafIndex
      properties:
        hash:
          $ref: '#/components/schemas/Hash'
        leafIndex:
          type: integer
          format: uint64
          minimum: 0
        tree:
          allOf:
            - $ref: '#/components/schemas/SerializablePubkey'
          description: >-
            State tree account. Prefer treeId; the tree account is derived from
            it.
          deprecated: true
        treeId:
          type: integer
          format: uint16
          description: The raw tree id the output's commitment is hashed under.
          minimum: 0
    SerializablePubkey:
      type: string
      description: A base58-encoded Solana public key.
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api-key
      description: Your Helius API key.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.