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

# Challenge Admin Handoff

> Register this Admin browser for a launch from the hub; carries no authority.

Spends the launch, sets an HttpOnly nonce cookie, and stores only hashes of
the nonce, the state and the S256 code challenge. Must come from the Admin
origin the launch named.



## OpenAPI

````yaml /openapi/mio-openapi.json post /api/v1/auth/admin-handoff/challenges
openapi: 3.1.0
info:
  description: >-
    Production API reference for Membership.io. Use the authored guides for
    workflows and the generated endpoint pages for exact parameters and schemas.
  title: Membership.io API
  version: 0.1.0
servers:
  - description: Production
    url: https://api.member.dev
security:
  - bearerAuth: []
paths:
  /api/v1/auth/admin-handoff/challenges:
    post:
      tags:
        - auth
      summary: Challenge Admin Handoff
      description: >-
        Register this Admin browser for a launch from the hub; carries no
        authority.


        Spends the launch, sets an HttpOnly nonce cookie, and stores only hashes
        of

        the nonce, the state and the S256 code challenge. Must come from the
        Admin

        origin the launch named.
      operationId: auth.post_auth_post_auth_admin_handoff_challenges
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/AdminHandoffChallengeEnvelope'
        required: true
      responses:
        '201':
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/AdminHandoffChallengeResponse'
          description: Successful Response
        '422':
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
components:
  schemas:
    AdminHandoffChallengeEnvelope:
      additionalProperties: false
      properties:
        data:
          $ref: '#/components/schemas/AdminHandoffChallengeRequestResource'
      required:
        - data
      title: AdminHandoffChallengeEnvelope
      type: object
    AdminHandoffChallengeResponse:
      additionalProperties: false
      properties:
        data:
          $ref: '#/components/schemas/AdminHandoffChallengeResource'
      required:
        - data
      title: AdminHandoffChallengeResponse
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    AdminHandoffChallengeRequestResource:
      additionalProperties: false
      properties:
        attributes:
          $ref: '#/components/schemas/_AdminHandoffChallengeRequestAttributes'
        type:
          const: admin_handoff_challenges
          title: Type
          type: string
      required:
        - type
        - attributes
      title: AdminHandoffChallengeRequestResource
      type: object
    AdminHandoffChallengeResource:
      additionalProperties: false
      properties:
        attributes:
          $ref: '#/components/schemas/AdminHandoffChallengeAttributes'
        id:
          title: Id
          type: string
        type:
          const: admin_handoff_challenges
          default: admin_handoff_challenges
          title: Type
          type: string
      required:
        - id
        - attributes
      title: AdminHandoffChallengeResource
      type: object
    ValidationError:
      properties:
        ctx:
          title: Context
          type: object
        input:
          title: Input
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
    _AdminHandoffChallengeRequestAttributes:
      additionalProperties: false
      properties:
        code_challenge:
          description: >-
            base64url(SHA-256(code_verifier)); the verifier never leaves the
            Admin tab.
          pattern: ^[A-Za-z0-9_-]{43}$
          title: Code Challenge
          type: string
        launch_id:
          pattern: ^[A-Za-z0-9_-]{43}$
          title: Launch Id
          type: string
        state:
          pattern: ^[A-Za-z0-9_-]{43}$
          title: State
          type: string
      required:
        - launch_id
        - state
        - code_challenge
      title: _AdminHandoffChallengeRequestAttributes
      type: object
    AdminHandoffChallengeAttributes:
      additionalProperties: false
      properties:
        deadline:
          format: date-time
          title: Deadline
          type: string
        hub_return_url:
          title: Hub Return Url
          type: string
        request_id:
          title: Request Id
          type: string
      required:
        - request_id
        - hub_return_url
        - deadline
      title: AdminHandoffChallengeAttributes
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT or mio_sk API key
      description: >-
        Send platform JWTs, contact JWTs, or team API keys as `Authorization:
        Bearer <token>`.
      scheme: bearer
      type: http

````

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