Understanding the Creative Upload Workflow
In the DISPL Ads system, uploading a file (Step 9 of the general procedure) is unique because it uses multipart/form-data to transfer a physical binary file rather than just text.
Step 1: Constructing the Request
The endpoint URL is dynamic. You must replace {YOUR_AGENCY_ID} with your unique ID provided by the platform.
Endpoint Structure: https://api.dooh.one/api/v2/agency/{YOUR_AGENCY_ID}/dsp/ad/
Example Command (cURL)
This command "pushes" a 10-second vertical video from your local folder (e.g., ID: 317) to the DISPL servers.
Bash
# Replace '2' with your specific Agency ID
# Replace <access_token> with your active Bearer token
curl -i -X POST \
-H 'x-authorization: Bearer <access_token>' \
-H 'x-adexchange-role: dsp' \
-F 'campaign_id=317' \
-F 'name=flash_sale_vertical_01' \
-F 'description=Flash Sale Promo for Downtown Totems' \
-F 'type=video' \
-F 'mime_type=video/mp4' \
-F 'file_size=5242880' \
-F 'duration=10.0' \
-F 'resolution=1080x1920' \
-F 'screen_resolution=1080x1920' \
-F 'file=@/marketing/assets/flash_sale.mp4' \
'https://api.dooh.one/api/v2/agency/2/dsp/ad/'
Step 2: Interpreting the Successful Response
Once the upload is complete, the API returns a 201 Created status and a JSON object. This confirms the file is received and generates a unique Ad ID.
JSON
{
"id": 1024,
"campaign_id": 317,
"name": "flash_sale_vertical_01",
"status": "pending_audit",
"media_url": "https://cdn.dooh.one/media/agency_2/ads/flash_sale_1024.mp4",
"created_at": "2024-05-20T14:30:00Z"
}
Key Takeaways for New Customers
The Agency ID: Found in your dashboard or login response, this ensures the creative is linked to the correct account.
The
@Symbol: In the cURL command, the@is mandatory. It tells the system to treat the string as a file path to your video.Audit Status: The
"status": "pending_audit"means your ad is now waiting for a manual review by the screen owners (SSPs). It cannot win auctions until this changes toapproved.Technical Alignment: Ensure your
resolution(the video's actual size) matches thescreen_resolutionyou targeted in your campaign settings to avoid playback issues.
Quick Checklist:
[ ] Is your Agency ID correctly placed in the URL?
[ ] Is your
campaign_idcurrently in a Draft state?[ ] Does the
x-adexchange-role: dspheader exist?
Comments
0 comments
Please sign in to leave a comment.