> For the complete documentation index, see [llms.txt](https://docs.moxha.dev/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.moxha.dev/documentation/paid-scripts/surround-spatial-audio/api/shared.md).

# Shared

### Create Sound Id

```lua
local soundId = exports['mx-surround']:createUniqueId()
```

#### Returns

* > `string`

### Get Info From Url

You can get information such as thumbnail, avatar and song url with this export.

```lua
local info = exports['mx-surround']:getInfoFromUrl(url)
```

#### Parameters

* > **url**: `string`

#### Returns

> Success

* ```typescript
  title: string; 
  artist: string; 
  thumbnail: string
  ```

> Error

* > `false`

***

### Search Track

With this export you can search for tracks by song name. This will also return information as with `getInfoFromUrl`

```lua
local response = exports['mx-surround']:searchTrack(query)
```

#### Parameters

* > **query**: `string`

#### Returns

> Success

* > ```typescript
  > artists: { artistId: string, name: string }[];
  > artist?: { artistId: string, name: string };
  > videoId?: string;
  > name: string;
  > album?: { albumId: string, name: string }[];
  > thumbnails: { url: string, width: number, height: number }[];
  > ```

> Error

* > ```typescript
  > error: string;
  > code: number;
  > ```

***

### Search Tracks (Playlist, album)

With this export you can get album and playlist information. It returns exactly the same information as `searchTrack`. However it's an array. Its not supports the soundcloud

```lua
local response = exports['mx-surround']:searchTracks(query)
```

#### Parameters

* > **query**: `string`

#### Returns

* > **Same as** `searchTrack`
