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

# June 24 2024

## Versions

* Latest React SDK: [1.0.158](https://www.npmjs.com/package/@veltdev/react)
* Latest Non-React SDK: [1.0.158](https://www.npmjs.com/package/@veltdev/client)
* Latest Types: [1.0.178](https://www.npmjs.com/package/@veltdev/types)

## Added `onContactSelected` API Method

We have introduced the [`onContactSelected`](/api-reference/sdk/api/api-methods#client#oncontactselected) API method in the Contact Element. This new method allows organization clients to add selected users to their organization or document-level IAM directly.

API Method:

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    const contactElement = client.getContactElement();

    contactElement.onContactSelected().subscribe((data: any) => {
      console.log('contact selected: ', data);
    });
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```jsx theme={null}
    const contactElement = Velt.getContactElement();

    contactElement.onContactSelected().subscribe((data: any) => {
      console.log('contact selected: ', data);
    });
    ```
  </Tab>
</Tabs>

React Hook:

```jsx theme={null}
import React, { useEffect } from 'react';
import { useContactUtils, useContactSelected } from '@veltdev/react';

function YourComponent() {

  const contactUtils = useContactUtils();

  useEffect(() => {
    console.log('contactUtils: ', contactUtils);
  }, [contactUtils]);

  const onContactSelected = useContactSelected();

  useEffect(() => {
    console.log('onContactSelected: ', onContactSelected);
  }, [onContactSelected]);

  return (
    // Your component code
  );

}
```

API Method Response Payload:

```jsx theme={null}
export class UserContactSelectedPayload {
    /**
     * Selected user contact details.
     */
    contact!: UserContact;
    /**
     * Is user part of organization contact.
     */
    isOrganizationContact!: boolean;
    /**
     * Is user part of document contact.
     */
    isDocumentContact!: boolean;
    /**
     * Document access type.
     */
    documentAccessType!: string;
}
```
