> For the complete documentation index, see [llms.txt](https://assetstore.snapchatkit.voxelbusters.com/tutorials/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://assetstore.snapchatkit.voxelbusters.com/tutorials/api/share-content.md).

# Share Content

Snapchat Kit allows to share image, video and even live camera. Along with the sharing media, you can attach stickers of your choice and attachment links (Check [next article](/tutorials/api/add-extra-content-stickers-and-links.md) on how to add additional data).

Sharing content can be of three types

* eSnapchatContentType.Photo

> *Images must be JPG or PNG.* *Size must be <= 15MB*

* eSnapchatContentType.Video

> *Videos must be <= 15MB in size* Videos must be **15 seconds or shorter.** *Must be MP4 format*

* eSnapchatContentType.LiveCamera

  > *Opens up the camera for sharing live camera content*

#### 1. Create **SnapchatContent** instance by passing the content type.

> For Sharing Image

```csharp
SnapchatContent content = new SnapchatContent(eSnapchatContentType.Photo)
```

> For Sharing Video

```csharp
SnapchatContent content = new SnapchatContent(eSnapchatContentType.Video)
```

> For Sharing Live Camera

```csharp
SnapchatContent content = new SnapchatContent(eSnapchatContentType.LiveCamera)
```

#### 2. Set sharing content data

Pass file path of the sharing content to SnapchatContent instance.

```csharp
content.SetContentData("PATH_TO_SHARING_CONTENT");
```

#### 3. Share and receive status in callback

Pass created SnapchatContent instance to SnapchatKitManager and register for callback

```csharp
SnapchatKitManager.Share(content, OnShareComplete);
```

### Example

```csharp
using VoxelBusters.SnapchatKit;

void ShareToSnapchat(string contentFilePath, bool isVideo)
{
    SnapchatContent content;
    if(isVideo)
    {
        content    =    new SnapchatContent(eSnapchatContentType.Video); 
    }
    else
    {
        content    =    new SnapchatContent(eSnapchatContentType.Photo);         
    }
    
    // Set content data
    content.SetContentData(contentFilePath);
    
    // Share
    SnapchatKitManager.Share(content, OnShareComplete);
}

private void OnShareComplete(bool success, string error)
{
	string message  =  success ? "Successfully Shared" : "Failed to share " + error;
	Debug.Log(message);
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://assetstore.snapchatkit.voxelbusters.com/tutorials/api/share-content.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
