Creating a post with a video works in the same way as creating a text post, with the addition of a `video` entry in the `assets` array. `assets` is an ordered list where each entry specifies exactly one of `image`, `video`, or `document` - pass a `video` entry with the URL you want to attach. 

To set the video thumbnail, choose which frame to use with `metadata.thumbnailOffset` - a millisecond offset into the video - on Instagram, TikTok, or Pinterest.

> The asset `url` must point to a publicly accessible file. See [Hosting Media](https://developers.buffer.com/guides/hosting-media.md) for suggested hosts and how to verify a URL works.

```graphql
mutation CreatePost {
  createPost(
    input: {
      text: "Hello there, this is another one!"
      channelId: "some_channel_id"
      schedulingType: automatic
      mode: addToQueue
      assets: [
        {
          video: {
            url: "https://example.com/video.mp4"
            metadata: { thumbnailOffset: 2000 }
          }
        }
      ]
    }
  ) {
    ... on PostActionSuccess {
      post {
        id
        text
        assets {
          source
        }
      }
    }
    ... on MutationError {
      message
    }
  }
}
```
