Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developer.dashsocial.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

This guide offers a streamlined process for uploading media to the Dash Social Library using an API. It is designed to help efficiently manage and scale the scheduling of your assets, connecting your CMS and asset management tools to Dash Social. Use this workflow as a starting point to explore new ways to scale and enhance your brand’s social presence.

Key use cases

  • Content Lifecycle Management: Leverage Dash Social’s suite of APIs, including Dashboards, Scheduling, and Library Media, to streamline your content creation from inception to publishing and analytics.
  • Asset Automation: Automatically upload approved assets to ensure correct and timely posting on social media.
  • Vision AI for Real-Time Feedback: During product and model photo shoots, instantly upload media for near real-time analysis of potential social media performance using our Vision AI model.
  • Streamline User-Generated Content (UGC) Uploads: Seamlessly integrate and make user-generated media from your stores and other sources accessible to your social teams.
If you haven’t already, make sure to go through the Quickstart guide to ensure you have your brand_id and API KEY.

Get Started

You can skip the first two steps if your media is already available on a public link for the upload.

Step 1: Create an s3 upload URL

Dash Social offers an s3 object URL for uploading your binary media data. You can generate an empty s3 URL by calling the endpoint and specifying the required filename and content_type. If your asset is already hosted on a public CDN, you can skip this step.
POST https://library-backend.dashsocial.com/media_upload_url

Body = {
  "filename": "filename",
  "content_type": "mimeType"
}

Step 2: Upload media

Using the s3 link you’ve created, remove all the query parameters by performing an operation like split(’?’). Then, stream your media in binary format. Additionally, you can reuse the uploaded media URL if you choose not to use our s3 URL above. This is useful for cases where you are uploading the same media to multiple brand libraries on Dash Social.
PUT "https://dashsocial-static.s3-accelerate.amazonaws.com/images/uploads/1706286004.872624911672.png"

Headers = {
  "Content-Type": "mimeType",
  "Cache-Control": "no-cache",
  "Accept": "application/json",
  "Connection": "keep-alive",
  "content-length": "content-length"
}

Body = {
  Binary media data
}

Step 3: Create the media in Dash Social Library

Now that you’ve uploaded the media, the next step is to create it in the Dash Social Library. This makes it accessible for use. See the endpoint’s reference for more info.
POST https://library-backend.dashsocial.com/brands/<brand_id>/media

{
    "source": "UPLOAD",
    "source_id": "uuid",
    "type": "UPLOADED",
    "url": "your media url here/s3 link",
    "meta": "{filename: filename}",
    "source_created_at": "creation timestamp"
}
You should now have your media uploaded to the Dash Social Library.

Optional: Retrieving Media

To retrieve your media, make requests to the media/v2 endpoint. For detailed information, refer to the endpoint’s reference documentation. As a guide, here is an example of such a request:
PUT https://library-backend.dashsocial.com/brands/<brand_id>/media/v2

body = {
  "limit": 99,
  "offset": 0,
  "filters": {
    "brand_media_types": [
      "UPLOADED"
    ],
    "source_created_at": {
      "end": "2022-01-10",
      "start": "2022-01-01"
    }
  }
}
If you need help at any point please reach out to support@dashsocial.com