diff --git a/src/pages/[platform]/build-a-backend/auth/connect-your-frontend/sign-up/index.mdx b/src/pages/[platform]/build-a-backend/auth/connect-your-frontend/sign-up/index.mdx
index 501e46af86a..402126fa0e5 100644
--- a/src/pages/[platform]/build-a-backend/auth/connect-your-frontend/sign-up/index.mdx
+++ b/src/pages/[platform]/build-a-backend/auth/connect-your-frontend/sign-up/index.mdx
@@ -553,7 +553,102 @@ Your application's users can also sign up using passwordless methods. To learn m
-{/* */}
+
+
+
+
+```swift
+// Sign up using an phone number
+func signUp(username: String, phonenumber: String) async {
+ let userAttributes = [
+ AuthUserAttribute(.phoneNumber, value: phonenumber)
+ ]
+ let options = AuthSignUpRequest.Options(userAttributes: userAttributes)
+ do {
+ let signUpResult = try await Amplify.Auth.signUp(
+ username: username,
+ options: options
+ )
+ if case let .confirmUser(deliveryDetails, _, userId) = signUpResult.nextStep {
+ print("Delivery details \(String(describing: deliveryDetails)) for userId: \(String(describing: userId)))")
+ } else {
+ print("SignUp Complete")
+ }
+ } catch let error as AuthError {
+ print("An error occurred while registering a user \(error)")
+ } catch {
+ print("Unexpected error: \(error)")
+ }
+}
+
+// Confirm sign up with the OTP received
+func confirmSignUp(for username: String, with confirmationCode: String) async {
+ do {
+ let confirmSignUpResult = try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ print("Confirm sign up result completed: \(confirmSignUpResult.isSignUpComplete)")
+ } catch let error as AuthError {
+ print("An error occurred while confirming sign up \(error)")
+ } catch {
+ print("Unexpected error: \(error)")
+ }
+}
+```
+
+
+
+
+
+```swift
+// Sign up using a phone number
+func signUp(username: String, phonenumber: String) -> AnyCancellable {
+ let userAttributes = [
+ AuthUserAttribute(.phoneNumber, value: phonenumber)
+ ]
+ let options = AuthSignUpRequest.Options(userAttributes: userAttributes)
+ let sink = Amplify.Publisher.create {
+ try await Amplify.Auth.signUp(
+ username: username,
+ options: options
+ )
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("An error occurred while registering a user \(authError)")
+ }
+ }
+ receiveValue: { signUpResult in
+ if case let .confirmUser(deliveryDetails, _, userId) = signUpResult.nextStep {
+ print("Delivery details \(String(describing: deliveryDetails)) for userId: \(String(describing: userId)))")
+ } else {
+ print("SignUp Complete")
+ }
+ }
+ return sink
+}
+
+// Confirm sign up with the OTP received
+func confirmSignUp(for username: String, with confirmationCode: String) -> AnyCancellable {
+ Amplify.Publisher.create {
+ try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("An error occurred while confirming sign up \(authError)")
+ }
+ }
+ receiveValue: { _ in
+ print("Confirm signUp succeeded")
+ }
+}
+```
+
+
+
+
@@ -578,7 +673,102 @@ Your application's users can also sign up using passwordless methods. To learn m
-{/* */}
+
+
+
+
+```swift
+// Sign up using an email
+func signUp(username: String, email: String) async {
+ let userAttributes = [
+ AuthUserAttribute(.email, value: email)
+ ]
+ let options = AuthSignUpRequest.Options(userAttributes: userAttributes)
+ do {
+ let signUpResult = try await Amplify.Auth.signUp(
+ username: username,
+ options: options
+ )
+ if case let .confirmUser(deliveryDetails, _, userId) = signUpResult.nextStep {
+ print("Delivery details \(String(describing: deliveryDetails)) for userId: \(String(describing: userId)))")
+ } else {
+ print("SignUp Complete")
+ }
+ } catch let error as AuthError {
+ print("An error occurred while registering a user \(error)")
+ } catch {
+ print("Unexpected error: \(error)")
+ }
+}
+
+// Confirm sign up with the OTP received
+func confirmSignUp(for username: String, with confirmationCode: String) async {
+ do {
+ let confirmSignUpResult = try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ print("Confirm sign up result completed: \(confirmSignUpResult.isSignUpComplete)")
+ } catch let error as AuthError {
+ print("An error occurred while confirming sign up \(error)")
+ } catch {
+ print("Unexpected error: \(error)")
+ }
+}
+```
+
+
+
+
+
+```swift
+// Sign up using an email
+func signUp(username: String, email: String) -> AnyCancellable {
+ let userAttributes = [
+ AuthUserAttribute(.email, value: email)
+ ]
+ let options = AuthSignUpRequest.Options(userAttributes: userAttributes)
+ let sink = Amplify.Publisher.create {
+ try await Amplify.Auth.signUp(
+ username: username,
+ options: options
+ )
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("An error occurred while registering a user \(authError)")
+ }
+ }
+ receiveValue: { signUpResult in
+ if case let .confirmUser(deliveryDetails, _, userId) = signUpResult.nextStep {
+ print("Delivery details \(String(describing: deliveryDetails)) for userId: \(String(describing: userId)))")
+ } else {
+ print("SignUp Complete")
+ }
+ }
+ return sink
+}
+
+// Confirm sign up with the OTP received
+func confirmSignUp(for username: String, with confirmationCode: String) -> AnyCancellable {
+ Amplify.Publisher.create {
+ try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("An error occurred while confirming sign up \(authError)")
+ }
+ }
+ receiveValue: { _ in
+ print("Confirm signUp succeeded")
+ }
+}
+```
+
+
+
+
@@ -607,3 +797,93 @@ Your application's users can also sign up using passwordless methods. To learn m
+### Auto Sign In
+
+{/* blurb with supplemental information about auto sign in */}
+
+
+
+{/* */}
+
+
+
+
+{/* */}
+
+
+
+
+{/* */}
+
+
+
+
+
+
+
+
+```swift
+// Confirm sign up with the OTP received and auto sign in
+func confirmSignUp(for username: String, with confirmationCode: String) async {
+ do {
+ let confirmSignUpResult = try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ if case .completeAutoSignIn(let session) = confirmSignUpResult.nextStep {
+ let autoSignInResult = try await Amplify.Auth.autoSignIn()
+ print("Auto sign in result: \(autoSignInResult.isSignedIn)")
+ } else {
+ print("Confirm sign up result completed: \(confirmSignUpResult.isSignUpComplete)")
+ }
+ } catch let error as AuthError {
+ print("An error occurred while confirming sign up \(error)")
+ } catch {
+ print("Unexpected error: \(error)")
+ }
+}
+```
+
+
+
+
+
+```swift
+// Confirm sign up with the OTP received and auto sign in
+func confirmSignUp(for username: String, with confirmationCode: String) -> AnyCancellable {
+ Amplify.Publisher.create {
+ try await Amplify.Auth.confirmSignUp(
+ for: username,
+ confirmationCode: confirmationCode
+ )
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("An error occurred while confirming sign up \(authError)")
+ }
+ }
+ receiveValue: { confirmSignUpResult in
+ if case .completeAutoSignIn = confirmSignUpResult.nextStep {
+ let _ = Amplify.Publisher.create {
+ try await Amplify.Auth.autoSignIn()
+ }.sink {
+ if case let .failure(authError) = $0 {
+ print("Auto Sign in failed \(authError)")
+ }
+ }
+ receiveValue: { autoSignInResult in
+ if autoSignInResult.isSignedIn {
+ print("Auto Sign in succeeded")
+ }
+ }
+ } else {
+ print("Confirm sign up result completed: \(confirmSignUpResult.isSignUpComplete)")
+ }
+ }
+}
+```
+
+
+
+
+
+