{"openapi":"3.1.0","info":{"title":"buildsocial API","version":"1.0","description":"Plan, check, schedule and publish real estate social posts, and make listing videos. Authorization: Bearer sk_… (made at app.buildsocial.ca)."},"servers":[{"url":"https://api.buildsocial.ca"}],"components":{"securitySchemes":{"key":{"type":"http","scheme":"bearer"}},"schemas":{"PostInput":{"type":"object","required":["kind","caption"],"properties":{"kind":{"type":"string"},"caption":{"type":"string"},"imageUrl":{"type":["string","null"]},"linkUrl":{"type":["string","null"]},"videoUrl":{"type":["string","null"]},"mls":{"type":["string","null"]},"targets":{"type":"array","items":{"type":"string","format":"uuid"}},"scheduledAt":{"type":["string","null"],"format":"date-time"},"meta":{"type":"object"}}},"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}}}},"security":[{"key":[]}],"paths":{"/v1/social/accounts":{"get":{"summary":"Connected network accounts","tags":["Accounts"]}},"/v1/social/plan":{"get":{"summary":"Suggested posts for the next four weeks","tags":["Planning"],"parameters":[{"name":"city","in":"query","schema":{"type":"string"}}]},"put":{"summary":"Set the content plan (post types, posts a week, city)","tags":["Planning"]}},"/v1/social/captions":{"post":{"summary":"AI captions per network (1 AI credit)","tags":["Writing"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["idea"],"properties":{"idea":{"type":"string"},"kind":{"type":"string"},"mls":{"type":"string"}}}}}}}},"/v1/social/posts":{"get":{"summary":"Posts","tags":["Posts"]},"post":{"summary":"Create a post (checked against RECO/FSRA rules and live numbers)","tags":["Posts"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostInput"}}}}}},"/v1/social/posts/{id}":{"put":{"summary":"Update a post","tags":["Posts"]},"delete":{"summary":"Delete a post that hasn't gone out","tags":["Posts"]}},"/v1/social/posts/{id}/schedule":{"post":{"summary":"Schedule, or send for approval","tags":["Posts"]}},"/v1/social/posts/{id}/approve":{"post":{"summary":"Approve (managers)","tags":["Posts"]}},"/v1/social/keywords":{"get":{"summary":"Keyword reply rules and recent comments/messages","tags":["Engagement"]},"post":{"summary":"Add a keyword reply","tags":["Engagement"]}},"/v1/media/videos":{"get":{"summary":"Listing videos","tags":["Media"]},"post":{"summary":"Make a listing video (1 video credit; reused free if identical)","tags":["Media"]}},"/v1/media/assets":{"get":{"summary":"Your photos and clips","tags":["Media"]},"post":{"summary":"Upload a photo or clip (base64)","tags":["Media"]}},"/v1/media/slideshows":{"post":{"summary":"Slideshow from your photos (1 video credit)","tags":["Media"]}},"/v1/social/webhooks":{"get":{"summary":"Webhooks","tags":["Webhooks"]},"post":{"summary":"Add a webhook; returns its signing secret once","tags":["Webhooks"]}}}}