{"openapi":"3.0.3","info":{"title":"IG Layers API","description":"The API layer for Instagram creator outreach.","version":"1.0.0","contact":{"name":"IG Layers Support","url":"https://iglayers.io"}},"servers":[{"url":"/api/v1","description":"Production API"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key: Bearer sk_live_xxxxx"}},"schemas":{"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}},"Client":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"externalId":{"type":"string"}}},"Campaign":{"type":"object","properties":{"id":{"type":"string"},"clientId":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","queued","running","paused","completed","failed"]},"dailyLimit":{"type":"integer"},"hourlyLimit":{"type":"integer"}}},"Target":{"type":"object","required":["instagramUsername"],"properties":{"instagramUsername":{"type":"string"},"profileUrl":{"type":"string"},"fullName":{"type":"string"},"firstName":{"type":"string"},"category":{"type":"string"},"followerCount":{"type":"integer"}}}}},"paths":{"/clients":{"get":{"summary":"List clients","tags":["Clients"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Create client","tags":["Clients"],"responses":{"201":{"description":"Created"}}}},"/clients/{id}":{"get":{"summary":"Get client","tags":["Clients"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/message-templates":{"get":{"summary":"List message templates","tags":["Templates"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Create message template","tags":["Templates"],"responses":{"201":{"description":"Created"}}}},"/campaigns":{"get":{"summary":"List campaigns","tags":["Campaigns"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Create campaign","tags":["Campaigns"],"responses":{"201":{"description":"Created"}}}},"/campaigns/{id}":{"get":{"summary":"Get campaign status","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/campaigns/{id}/targets":{"post":{"summary":"Add targets","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Created"}}}},"/campaigns/{id}/start":{"post":{"summary":"Start campaign","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/campaigns/{id}/pause":{"post":{"summary":"Pause campaign","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/campaigns/{id}/resume":{"post":{"summary":"Resume campaign","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/campaigns/{id}/results":{"get":{"summary":"Get campaign results","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"format","in":"query","schema":{"type":"string","enum":["json","csv"]}}],"responses":{"200":{"description":"OK"}}}},"/campaigns/{id}/replies":{"get":{"summary":"Get campaign replies","tags":["Campaigns"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/sender-accounts":{"get":{"summary":"List sender accounts","tags":["Senders"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Add sender account","tags":["Senders"],"responses":{"201":{"description":"Created"}}}},"/sender-accounts/{id}":{"patch":{"summary":"Update sender status","tags":["Senders"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/suppressions":{"get":{"summary":"List suppressions","tags":["Suppressions"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Add suppression","tags":["Suppressions"],"responses":{"201":{"description":"Created"}}}},"/webhooks":{"get":{"summary":"List webhook endpoints","tags":["Webhooks"],"responses":{"200":{"description":"OK"}}},"post":{"summary":"Create webhook endpoint","tags":["Webhooks"],"responses":{"201":{"description":"Created"}}}},"/webhooks/{id}/test":{"post":{"summary":"Send test webhook","tags":["Webhooks"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"}}}},"/usage":{"get":{"summary":"Get usage logs","tags":["Usage"],"responses":{"200":{"description":"OK"}}}}}}