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

# Get a sign-in challenge

> The terms of a Sign-In-With-X sign-in for an address and the exact text its wallet must sign.



## OpenAPI

````yaml gateway-openapi.yaml GET /v1/session/challenge
openapi: 3.1.0
info:
  contact: {}
  description: HTTP entry point to the Molpha oracle protocol.
  title: Molpha Gateway API
  version: '1.0'
  x-mint:
    metadata:
      description: >-
        Dispatch oracle rounds, collect threshold signatures, and return
        payloads for Solana, EVM, and Starknet verification.
servers:
  - url: https://gateway.molpha.io
    description: Devnet (SDK default)
security: []
tags:
  - name: health
    x-group: Health
    description: Liveness probes
  - name: gateway
    x-group: Gateway
    description: Gateway identity and the RequestAuth window
  - name: nodes
    x-group: Nodes
    description: Oracle node discovery
  - name: providers
    x-group: Providers
    description: Integrated data providers
  - name: round
    x-group: Subscription rounds
    description: Subscription and delegate execute path
  - name: session
    x-group: Sessions
    description: >-
      Sign-In-With-X sessions (served when `GET /v1/info` reports `sessionAuth`
      true)
  - name: x402
    x-group: x402 pay-per-request
    description: >-
      Pay-per-request path paid in USDC to the protocol treasury (requires a
      configured facilitator)
paths:
  /v1/session/challenge:
    get:
      tags:
        - session
      summary: Get a sign-in challenge
      description: >-
        The terms of a Sign-In-With-X sign-in for an address and the exact text
        its wallet must sign.
      parameters:
        - name: address
          in: query
          required: true
          description: Base58 public key that will sign in
          schema:
            type: string
            example: 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU
        - name: owner
          in: query
          required: false
          description: Base58 subscription owner; defaults to `address`
          schema:
            type: string
      responses:
        '200':
          description: Sign-in challenge
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionChallengeResponse'
        '400':
          description: '`address` or `owner` is not a base58 public key'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Sessions are not enabled on this gateway
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    SessionChallengeResponse:
      type: object
      properties:
        status:
          type: string
          example: ok
        data:
          $ref: '#/components/schemas/SessionChallengeData'
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message.
          example: validation failed
    SessionChallengeData:
      type: object
      description: The terms of one sign-in.
      properties:
        info:
          $ref: '#/components/schemas/SIWXInfo'
        supportedChains:
          type: array
          items:
            $ref: '#/components/schemas/SIWXSupportedChain'
        address:
          type: string
          description: The key that must sign `message`.
          example: 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU
        owner:
          type: string
          description: >-
            The subscription owner the session is for; equal to `address` for
            the owner itself.
          example: 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU
        chainId:
          type: string
          example: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1
        message:
          type: string
          description: The exact UTF-8 text to sign, with no trailing newline.
    SIWXInfo:
      type: object
      description: >-
        The sign-in message fields, in the shape of the x402 `sign-in-with-x`
        extension.
      properties:
        domain:
          type: string
          example: gateway.molpha.io
        uri:
          type: string
          example: https://gateway.molpha.io/v1/session
        version:
          type: string
          example: '1'
        statement:
          type: string
        nonce:
          type: string
          example: 5f3a9c0e7b1d4a26c8e0f1a2b3c4d5e6
        issuedAt:
          type: string
          example: '2026-10-07T12:00:00.000Z'
        expirationTime:
          type: string
          example: '2026-10-07T12:05:00.000Z'
        resources:
          type: array
          items:
            type: string
    SIWXSupportedChain:
      type: object
      properties:
        chainId:
          type: string
          example: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1
        type:
          type: string
          example: ed25519
        signatureScheme:
          type: string
          example: siws

````

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