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

# Verify a SIWE message and return a JWT for API authentication

> Verifies a signed SIWE message and returns a JWT. A Viewer wallet on the personal RiseID can create payment intents when the same wallet holds PaymentInitiator, Payer, Owner or Treasurer on the team Rise Account, and pay now or make instant payments when it holds Payer, Owner or Treasurer. An Owner wallet can do all of that and invite managers. Requests must be signed by the wallet used to sign in.



## OpenAPI

````yaml /api-reference/openapi.yaml post /v2/auth/verify
openapi: 3.0.3
info:
  title: Rise
  description: Web3-enabled payroll and compliance for the modern workforce
  version: 2.0.0
servers:
  - url: https://b2b-api.dev-riseworks.io
    description: Development
  - url: https://integrations-api.staging-riseworks.io
    description: Staging
  - url: https://integrations-api.riseworks.io
    description: Production
security: []
paths:
  /v2/auth/verify:
    post:
      tags:
        - Authentication
      summary: Verify a SIWE message and return a JWT for API authentication
      description: >-
        Verifies a signed SIWE message and returns a JWT. A Viewer wallet on the
        personal RiseID can create payment intents when the same wallet holds
        PaymentInitiator, Payer, Owner or Treasurer on the team Rise Account,
        and pay now or make instant payments when it holds Payer, Owner or
        Treasurer. An Owner wallet can do all of that and invite managers.
        Requests must be signed by the wallet used to sign in.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                message:
                  type: string
                  description: The original SIWE message that was signed by the user.
                sig:
                  type: string
                  description: >-
                    The signature generated by the user when signing the SIWE
                    message.
                nonce:
                  type: string
                  description: >-
                    Kept for compatibility and ignored: the nonce is read from
                    the signed message, which must be one issued by GET
                    /v2/auth/siwe and not yet expired (60 minutes).
              required:
                - message
                - sig
                - nonce
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - true
                  data:
                    type: object
                    properties:
                      jwt:
                        type: string
                        description: >-
                          The JSON Web Token (JWT) for authenticated API
                          requests.
                    required:
                      - jwt
                    additionalProperties: false
                required:
                  - success
                  - data
                additionalProperties: false
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Bad Request
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Forbidden
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Internal Server Error
        '502':
          description: Bad Gateway
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  data:
                    type: string
                  error_code:
                    type: string
                required:
                  - success
                  - data
                additionalProperties: false
                description: Bad Gateway

````

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