Amazon Cognito #X Amz Target=AWSCognitoIdentityProviderService.AdminInitiateAuth API

The #X Amz Target=AWSCognitoIdentityProviderService.AdminInitiateAuth API from Amazon Cognito — 1 operation(s) for #x amz target=awscognitoidentityproviderservice.admininitiateauth.

Operations 1

POST /#X-Amz-Target=AWSCognitoIdentityProviderService.AdminInitiateAuth Amazon Cognito Admin Initiate Auth #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-cognito-x-amz-target-awscognitoidentityproviderservice-admininitiateauth-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-cognito-x-amz-target-awscognitoidentityproviderservice-admininitiateauth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '2016-04-18'
  x-release: v4
  title: 'Amazon Cognito Identity Provider #X Amz Target=AWSCognitoIdentityProviderService.AdminInitiateAuth API'
  description: <p>With the Amazon Cognito user pools API, you can set up user pools and app clients, and authenticate users. To authenticate users from third-party identity providers (IdPs) in this API, you can <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-identity-federation-consolidate-users.html">link IdP users to native user profiles</a>. Learn more about the authentication and authorization of federated users in the <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-userpools-server-contract-reference.html">Using the Amazon Cognito user pools API and user pool endpoints</a>.</p> <p>This API reference provides detailed information about API operations and object types in Amazon Cognito. At the bottom of the page for each API operation and object, under <i>See Also</i>, you can learn how to use it in an Amazon Web Services SDK in the language of your choice.</p> <p>Along with resource management operations, the Amazon Cognito user pools API includes classes of operations and authorization models for client-side and server-side user operations. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pools-API-operations.html">Using the Amazon Cognito native and OIDC APIs</a> in the <i>Amazon Cognito Developer Guide</i>.</p> <p>You can also start reading about the <code>CognitoIdentityProvider</code> client in the following SDK guides.</p> <ul> <li> <p> <a href="https://docs.aws.amazon.com/cli/latest/reference/cognito-idp/index.html#cli-aws-cognito-idp">Amazon Web Services Command Line Interface</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/CognitoIdentityProvider/TCognitoIdentityProviderClient.html">Amazon Web Services SDK for .NET</a> </p> </li> <li> <p> <a href="https://sdk.amazonaws.com/cpp/api/LATEST/aws-cpp-sdk-cognito-idp/html/class_aws_1_1_cognito_identity_provider_1_1_cognito_identity_provider_client.html">Amazon Web Services SDK for C++</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/sdk-for-go/api/service/cognitoidentityprovider/#CognitoIdentityProvider">Amazon Web Services SDK for Go</a> </p> </li> <li> <p> <a href="https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/cognitoidentityprovider/CognitoIdentityProviderClient.html">Amazon Web Services SDK for Java V2</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html">Amazon Web Services SDK for JavaScript</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-cognito-idp-2016-04-18.html">Amazon Web Services SDK for PHP V3</a> </p> </li> <li> <p> <a href="https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cognito-idp.html">Amazon Web Services SDK for Python</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CognitoIdentityProvider/Client.html">Amazon Web Services SDK for Ruby V3</a> </p> </li> </ul> <p>To get started with an Amazon Web Services SDK, see <a href="http://aws.amazon.com/developer/tools/">Tools to Build on Amazon Web Services</a>. For example actions and scenarios, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/service_code_examples_cognito-identity-provider.html">Code examples for Amazon Cognito Identity Provider using Amazon Web Services SDKs</a>.</p>
  x-logo:
    url: https://twitter.com/awscloud/profile_image?size=original
    backgroundColor: '#FFFFFF'
  termsOfService: https://aws.amazon.com/service-terms/
  contact:
    name: Mike Ralphson
    email: mike.ralphson@gmail.com
    url: https://github.com/mermade/aws2openapi
    x-twitter: PermittedSoc
  license:
    name: Apache 2.0 License
    url: http://www.apache.org/licenses/
  x-providerName: amazonaws.com
  x-serviceName: cognito-idp
  x-origin:
  - contentType: application/json
    url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/cognito-idp-2016-04-18.normal.json
    converter:
      url: https://github.com/mermade/aws2openapi
      version: 1.0.0
    x-apisguru-driver: external
  x-apiClientRegistration:
    url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
  x-apisguru-categories:
  - cloud
  x-preferred: true
servers:
- url: http://cognito-idp.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Amazon Cognito Identity Provider multi-region endpoint
- url: https://cognito-idp.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Amazon Cognito Identity Provider multi-region endpoint
- url: http://cognito-idp.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Amazon Cognito Identity Provider endpoint for China (Beijing) and China (Ningxia)
- url: https://cognito-idp.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Amazon Cognito Identity Provider endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: '#X Amz Target=AWSCognitoIdentityProviderService.AdminInitiateAuth'
paths:
  /#X-Amz-Target=AWSCognitoIdentityProviderService.AdminInitiateAuth:
    parameters:
    - $ref: '#/components/parameters/X-Amz-Content-Sha256'
    - $ref: '#/components/parameters/X-Amz-Date'
    - $ref: '#/components/parameters/X-Amz-Algorithm'
    - $ref: '#/components/parameters/X-Amz-Credential'
    - $ref: '#/components/parameters/X-Amz-Security-Token'
    - $ref: '#/components/parameters/X-Amz-Signature'
    - $ref: '#/components/parameters/X-Amz-SignedHeaders'
    post:
      operationId: AdminInitiateAuth
      description: <p>Initiates the authentication flow, as an administrator.</p> <note> <p>This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers require you to register an origination phone number before you can send SMS messages to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a phone number with <a href="https://console.aws.amazon.com/pinpoint/home/">Amazon Pinpoint</a>. Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must receive SMS messages might not be able to sign up, activate their accounts, or sign in.</p> <p>If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Service, Amazon Simple Notification Service might place your account in the SMS sandbox. In <i> <a href="https://docs.aws.amazon.com/sns/latest/dg/sns-sms-sandbox.html">sandbox mode</a> </i>, you can send messages only to verified phone numbers. After you test your app while in the sandbox environment, you can move out of the sandbox and into production. For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sms-settings.html"> SMS message settings for Amazon Cognito user pools</a> in the <i>Amazon Cognito Developer Guide</i>.</p> </note> <note> <p>Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For this operation, you must use IAM credentials to authorize requests, and you must grant yourself the corresponding IAM permission in a policy.</p> <p class="title"> <b>Learn more</b> </p> <ul> <li> <p> <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html">Signing Amazon Web Services API Requests</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/user-pools-API-operations.html">Using the Amazon Cognito user pools API and user pool endpoints</a> </p> </li> </ul> </note>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminInitiateAuthResponse'
              examples:
                AdminInitiateAuth200Example:
                  summary: Default AdminInitiateAuth 200 response
                  x-microcks-default: true
                  value:
                    ChallengeName: example
                    Session: example
                    ChallengeParameters: example
                    AuthenticationResult: example
        '480':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
              examples:
                AdminInitiateAuth480Example:
                  summary: Default AdminInitiateAuth 480 response
                  x-microcks-default: true
                  value: example
        '481':
          description: InvalidParameterException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterException'
              examples:
                AdminInitiateAuth481Example:
                  summary: Default AdminInitiateAuth 481 response
                  x-microcks-default: true
                  value: example
        '482':
          description: NotAuthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotAuthorizedException'
              examples:
                AdminInitiateAuth482Example:
                  summary: Default AdminInitiateAuth 482 response
                  x-microcks-default: true
                  value: example
        '483':
          description: TooManyRequestsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsException'
              examples:
                AdminInitiateAuth483Example:
                  summary: Default AdminInitiateAuth 483 response
                  x-microcks-default: true
                  value: example
        '484':
          description: InternalErrorException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalErrorException'
              examples:
                AdminInitiateAuth484Example:
                  summary: Default AdminInitiateAuth 484 response
                  x-microcks-default: true
                  value: example
        '485':
          description: UnexpectedLambdaException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnexpectedLambdaException'
              examples:
                AdminInitiateAuth485Example:
                  summary: Default AdminInitiateAuth 485 response
                  x-microcks-default: true
                  value: example
        '486':
          description: InvalidUserPoolConfigurationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidUserPoolConfigurationException'
              examples:
                AdminInitiateAuth486Example:
                  summary: Default AdminInitiateAuth 486 response
                  x-microcks-default: true
                  value: example
        '487':
          description: UserLambdaValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserLambdaValidationException'
              examples:
                AdminInitiateAuth487Example:
                  summary: Default AdminInitiateAuth 487 response
                  x-microcks-default: true
                  value: example
        '488':
          description: InvalidLambdaResponseException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidLambdaResponseException'
              examples:
                AdminInitiateAuth488Example:
                  summary: Default AdminInitiateAuth 488 response
                  x-microcks-default: true
                  value: example
        '489':
          description: MFAMethodNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MFAMethodNotFoundException'
              examples:
                AdminInitiateAuth489Example:
                  summary: Default AdminInitiateAuth 489 response
                  x-microcks-default: true
                  value: example
        '490':
          description: InvalidSmsRoleAccessPolicyException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidSmsRoleAccessPolicyException'
              examples:
                AdminInitiateAuth490Example:
                  summary: Default AdminInitiateAuth 490 response
                  x-microcks-default: true
                  value: example
        '491':
          description: InvalidSmsRoleTrustRelationshipException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidSmsRoleTrustRelationshipException'
              examples:
                AdminInitiateAuth491Example:
                  summary: Default AdminInitiateAuth 491 response
                  x-microcks-default: true
                  value: example
        '492':
          description: PasswordResetRequiredException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PasswordResetRequiredException'
              examples:
                AdminInitiateAuth492Example:
                  summary: Default AdminInitiateAuth 492 response
                  x-microcks-default: true
                  value: example
        '493':
          description: UserNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserNotFoundException'
              examples:
                AdminInitiateAuth493Example:
                  summary: Default AdminInitiateAuth 493 response
                  x-microcks-default: true
                  value: example
        '494':
          description: UserNotConfirmedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserNotConfirmedException'
              examples:
                AdminInitiateAuth494Example:
                  summary: Default AdminInitiateAuth 494 response
                  x-microcks-default: true
                  value: example
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminInitiateAuthRequest'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSCognitoIdentityProviderService.AdminInitiateAuth
      summary: Amazon Cognito Admin Initiate Auth
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - '#X Amz Target=AWSCognitoIdentityProviderService.AdminInitiateAuth'
components:
  schemas:
    AuthenticationResultType:
      type: object
      properties:
        AccessToken:
          allOf:
          - $ref: '#/components/schemas/TokenModelType'
          - description: A valid access token that Amazon Cognito issued to the user who you want to authenticate.
        ExpiresIn:
          allOf:
          - $ref: '#/components/schemas/IntegerType'
          - description: The expiration period of the authentication result in seconds.
        TokenType:
          allOf:
          - $ref: '#/components/schemas/StringType'
          - description: The token type.
        RefreshToken:
          allOf:
          - $ref: '#/components/schemas/TokenModelType'
          - description: The refresh token.
        IdToken:
          allOf:
          - $ref: '#/components/schemas/TokenModelType'
          - description: The ID token.
        NewDeviceMetadata:
          allOf:
          - $ref: '#/components/schemas/NewDeviceMetadataType'
          - description: The new device metadata from an authentication result.
      description: The authentication result.
    InvalidLambdaResponseException: {}
    ResourceNotFoundException: {}
    AnalyticsMetadataType:
      type: object
      properties:
        AnalyticsEndpointId:
          allOf:
          - $ref: '#/components/schemas/StringType'
          - description: The endpoint ID.
      description: <p>An Amazon Pinpoint analytics endpoint.</p> <p>An endpoint uniquely identifies a mobile device, email address, or phone number that can receive messages from Amazon Pinpoint analytics. For more information about Amazon Web Services Regions that can contain Amazon Pinpoint resources for use with Amazon Cognito user pools, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html">Using Amazon Pinpoint analytics with Amazon Cognito user pools</a>.</p>
    IntegerType:
      type: integer
    InvalidSmsRoleTrustRelationshipException: {}
    UserPoolIdType:
      type: string
      pattern: '[\w-]+_[0-9a-zA-Z]+'
      minLength: 1
      maxLength: 55
    ChallengeParametersType:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/StringType'
    UnexpectedLambdaException: {}
    InvalidSmsRoleAccessPolicyException: {}
    ClientMetadataType:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/StringType'
    ClientIdType:
      type: string
      pattern: '[\w+]+'
      minLength: 1
      maxLength: 128
      format: password
    NotAuthorizedException: {}
    InvalidUserPoolConfigurationException: {}
    AdminInitiateAuthResponse:
      type: object
      properties:
        ChallengeName:
          allOf:
          - $ref: '#/components/schemas/ChallengeNameType'
          - description: '<p>The name of the challenge that you''re responding to with this call. This is returned in the <code>AdminInitiateAuth</code> response if you must pass another challenge.</p> <ul> <li> <p> <code>MFA_SETUP</code>: If MFA is required, users who don''t have at least one of the MFA methods set up are presented with an <code>MFA_SETUP</code> challenge. The user must set up at least one MFA type to continue to authenticate.</p> </li> <li> <p> <code>SELECT_MFA_TYPE</code>: Selects the MFA type. Valid MFA options are <code>SMS_MFA</code> for text SMS MFA, and <code>SOFTWARE_TOKEN_MFA</code> for time-based one-time password (TOTP) software token MFA.</p> </li> <li> <p> <code>SMS_MFA</code>: Next challenge is to supply an <code>SMS_MFA_CODE</code>, delivered via SMS.</p> </li> <li> <p> <code>PASSWORD_VERIFIER</code>: Next challenge is to supply <code>PASSWORD_CLAIM_SIGNATURE</code>, <code>PASSWORD_CLAIM_SECRET_BLOCK</code>, and <code>TIMESTAMP</code> after the client-side SRP calculations.</p> </li> <li> <p> <code>CUSTOM_CHALLENGE</code>: This is returned if your custom authentication flow determines that the user should pass another challenge before tokens are issued.</p> </li> <li> <p> <code>DEVICE_SRP_AUTH</code>: If device tracking was activated in your user pool and the previous challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.</p> </li> <li> <p> <code>DEVICE_PASSWORD_VERIFIER</code>: Similar to <code>PASSWORD_VERIFIER</code>, but for devices only.</p> </li> <li> <p> <code>ADMIN_NO_SRP_AUTH</code>: This is returned if you must authenticate with <code>USERNAME</code> and <code>PASSWORD</code> directly. An app client must be enabled to use this flow.</p> </li> <li> <p> <code>NEW_PASSWORD_REQUIRED</code>: For users who are required to change their passwords after successful first login. Respond to this challenge with <code>NEW_PASSWORD</code> and any required attributes that Amazon Cognito returned in the <code>requiredAttributes</code> parameter. You can also set values for attributes that aren''t required by your user pool and that your app client can write. For more information, see <a href="https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminRespondToAuthChallenge.html">AdminRespondToAuthChallenge</a>.</p> <note> <p>In a <code>NEW_PASSWORD_REQUIRED</code> challenge response, you can''t modify a required attribute that already has a value. In <code>AdminRespondToAuthChallenge</code>, set a value for any keys that Amazon Cognito returned in the <code>requiredAttributes</code> parameter, then use the <code>AdminUpdateUserAttributes</code> API operation to modify the value of any additional attributes.</p> </note> </li> <li> <p> <code>MFA_SETUP</code>: For users who are required to set up an MFA factor before they can sign in. The MFA types activated for the user pool will be listed in the challenge parameters <code>MFA_CAN_SETUP</code> value. </p> <p> To set up software token MFA, use the session returned here from <code>InitiateAuth</code> as an input to <code>AssociateSoftwareToken</code>, and use the session returned by <code>VerifySoftwareToken</code> as an input to <code>RespondToAuthChallenge</code> with challenge name <code>MFA_SETUP</code> to complete sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their account and then call <code>InitiateAuth</code> again to restart sign-in.</p> </li> </ul>'
        Session:
          allOf:
          - $ref: '#/components/schemas/SessionType'
          - description: The session that should be passed both ways in challenge-response calls to the service. If <code>AdminInitiateAuth</code> or <code>AdminRespondToAuthChallenge</code> API call determines that the caller must pass another challenge, they return a session with other challenge parameters. This session should be passed as it is to the next <code>AdminRespondToAuthChallenge</code> API call.
        ChallengeParameters:
          allOf:
          - $ref: '#/components/schemas/ChallengeParametersType'
          - description: <p>The challenge parameters. These are returned to you in the <code>AdminInitiateAuth</code> response if you must pass another challenge. The responses in this parameter should be used to compute inputs to the next call (<code>AdminRespondToAuthChallenge</code>).</p> <p>All challenges require <code>USERNAME</code> and <code>SECRET_HASH</code> (if applicable).</p> <p>The value of the <code>USER_ID_FOR_SRP</code> attribute is the user's actual username, not an alias (such as email address or phone number), even if you specified an alias in your call to <code>AdminInitiateAuth</code>. This happens because, in the <code>AdminRespondToAuthChallenge</code> API <code>ChallengeResponses</code>, the <code>USERNAME</code> attribute can't be an alias.</p>
        AuthenticationResult:
          allOf:
          - $ref: '#/components/schemas/AuthenticationResultType'
          - description: The result of the authentication response. This is only returned if the caller doesn't need to pass another challenge. If the caller does need to pass another challenge before it gets tokens, <code>ChallengeName</code>, <code>ChallengeParameters</code>, and <code>Session</code> are returned.
      description: Initiates the authentication response, as an administrator.
    UserNotConfirmedException: {}
    PasswordResetRequiredException: {}
    SessionType:
      type: string
      minLength: 20
      maxLength: 2048
    UserLambdaValidationException: {}
    TokenModelType:
      type: string
      pattern: '[A-Za-z0-9-_=.]+'
      format: password
    HttpHeader:
      type: object
      properties:
        headerName:
          allOf:
          - $ref: '#/components/schemas/StringType'
          - description: The header name.
        headerValue:
          allOf:
          - $ref: '#/components/schemas/StringType'
          - description: The header value.
      description: The HTTP header.
    MFAMethodNotFoundException: {}
    AuthFlowType:
      type: string
      enum:
      - USER_SRP_AUTH
      - REFRESH_TOKEN_AUTH
      - REFRESH_TOKEN
      - CUSTOM_AUTH
      - ADMIN_NO_SRP_AUTH
      - USER_PASSWORD_AUTH
      - ADMIN_USER_PASSWORD_AUTH
    UserNotFoundException: {}
    HttpHeaderList:
      type: array
      items:
        $ref: '#/components/schemas/HttpHeader'
    TooManyRequestsException: {}
    StringType:
      type: string
      minLength: 0
      maxLength: 131072
    AuthParametersType:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/StringType'
    ChallengeNameType:
      type: string
      enum:
      - SMS_MFA
      - SOFTWARE_TOKEN_MFA
      - SELECT_MFA_TYPE
      - MFA_SETUP
      - PASSWORD_VERIFIER
      - CUSTOM_CHALLENGE
      - DEVICE_SRP_AUTH
      - DEVICE_PASSWORD_VERIFIER
      - ADMIN_NO_SRP_AUTH
      - NEW_PASSWORD_REQUIRED
    NewDeviceMetadataType:
      type: object
      properties:
        DeviceKey:
          allOf:
          - $ref: '#/components/schemas/DeviceKeyType'
          - description: The device key.
        DeviceGroupKey:
          allOf:
          - $ref: '#/components/schemas/StringType'
          - description: The device group key.
      description: The new device metadata type.
    InvalidParameterException: {}
    AdminInitiateAuthRequest:
      type: object
      required:
      - UserPoolId
      - ClientId
      - AuthFlow
      title: AdminInitiateAuthRequest
      properties:
        UserPoolId:
          allOf:
          - $ref: '#/components/schemas/UserPoolIdType'
          - description: The ID of the Amazon Cognito user pool.
        ClientId:
          allOf:
          - $ref: '#/components/schemas/ClientIdType'
          - description: The app client ID.
        AuthFlow:
          allOf:
          - $ref: '#/components/schemas/AuthFlowType'
          - description: '<p>The authentication flow for this call to run. The API action will depend on this value. For example:</p> <ul> <li> <p> <code>REFRESH_TOKEN_AUTH</code> will take in a valid refresh token and return new tokens.</p> </li> <li> <p> <code>USER_SRP_AUTH</code> will take in <code>USERNAME</code> and <code>SRP_A</code> and return the Secure Remote Password (SRP) protocol variables to be used for next challenge execution.</p> </li> <li> <p> <code>ADMIN_USER_PASSWORD_AUTH</code> will take in <code>USERNAME</code> and <code>PASSWORD</code> and return the next challenge or tokens.</p> </li> </ul> <p>Valid values include:</p> <ul> <li> <p> <code>USER_SRP_AUTH</code>: Authentication flow for the Secure Remote Password (SRP) protocol.</p> </li> <li> <p> <code>REFRESH_TOKEN_AUTH</code>/<code>REFRESH_TOKEN</code>: Authentication flow for refreshing the access token and ID token by supplying a valid refresh token.</p> </li> <li> <p> <code>CUSTOM_AUTH</code>: Custom authentication flow.</p> </li> <li> <p> <code>ADMIN_NO_SRP_AUTH</code>: Non-SRP authentication flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled for calling the app client.</p> </li> <li> <p> <code>ADMIN_USER_PASSWORD_AUTH</code>: Admin-based user password authentication. This replaces the <code>ADMIN_NO_SRP_AUTH</code> authentication flow. In this flow, Amazon Cognito receives the password in the request instead of using the SRP process to verify passwords.</p> </li> </ul>'
        AuthParameters:
          allOf:
          - $ref: '#/components/schemas/AuthParametersType'
          - description: '<p>The authentication parameters. These are inputs corresponding to the <code>AuthFlow</code> that you''re invoking. The required values depend on the value of <code>AuthFlow</code>:</p> <ul> <li> <p>For <code>USER_SRP_AUTH</code>: <code>USERNAME</code> (required), <code>SRP_A</code> (required), <code>SECRET_HASH</code> (required if the app client is configured with a client secret), <code>DEVICE_KEY</code>.</p> </li> <li> <p>For <code>ADMIN_USER_PASSWORD_AUTH</code>: <code>USERNAME</code> (required), <code>PASSWORD</code> (required), <code>SECRET_HASH</code> (required if the app client is configured with a client secret), <code>DEVICE_KEY</code>.</p> </li> <li> <p>For <code>REFRESH_TOKEN_AUTH/REFRESH_TOKEN</code>: <code>REFRESH_TOKEN</code> (required), <code>SECRET_HASH</code> (required if the app client is configured with a client secret), <code>DEVICE_KEY</code>.</p> </li> <li> <p>For <code>CUSTOM_AUTH</code>: <code>USERNAME</code> (required), <code>SECRET_HASH</code> (if app client is configured with client secret), <code>DEVICE_KEY</code>. To start the authentication flow with password verification, include <code>ChallengeName: SRP_A</code> and <code>SRP_A: (The SRP_A Value)</code>.</p> </li> </ul> <p>For more information about <code>SECRET_HASH</code>, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html#cognito-user-pools-computing-secret-hash">Computing secret hash values</a>. For information about <code>DEVICE_KEY</code>, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-device-tracking.html">Working with user devices in your user pool</a>.</p>'
        ClientMetadata:
          allOf:
          - $ref: '#/components/schemas/ClientMetadataType'
          - description: <p>A map of custom key-value pairs that you can provide as input for certain custom workflows that this action triggers.</p> <p>You create custom workflows by assigning Lambda functions to user pool triggers. When you use the AdminInitiateAuth API action, Amazon Cognito invokes the Lambda functions that are specified for various triggers. The ClientMetadata value is passed as input to the functions for only the following triggers:</p> <ul> <li> <p>Pre signup</p> </li> <li> <p>Pre authentication</p> </li> <li> <p>User migration</p> </li> </ul> <p>When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which the function receives as input. This payload contains a <code>validationData</code> attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminInitiateAuth request. In your function code in Lambda, you can process the <code>validationData</code> value to enhance your workflow for your specific needs.</p> <p>When you use the AdminInitiateAuth API action, Amazon Cognito also invokes the functions for the following triggers, but it doesn't provide the ClientMetadata value as input:</p> <ul> <li> <p>Post authentication</p> </li> <li> <p>Custom message</p> </li> <li> <p>Pre token generation</p> </li> <li> <p>Create auth challenge</p> </li> <li> <p>Define auth challenge</p> </li> <li> <p>Verify auth challenge</p> </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html"> Customizing user pool Workflows with Lambda Triggers</a> in the <i>Amazon Cognito Developer Guide</i>.</p> <note> <p>When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the following:</p> <ul> <li> <p>Store the ClientMetadata value. This data is available only to Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configur

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/amazon-cognito/refs/heads/main/openapi/amazon-cognito-x-amz-target-awscognitoidentityproviderservice-admininitiateauth-api-openapi.yml