Add a Modal to a container

Add a Modal to a container

POST https://api.ocamba.com/v1/hood/containers/{container_id}/modals

Add a Modal to a container

Rate limits:

Burst: 10/s
Steady: 150/m

Path parameters

parameters

Request schema

body

Response schemas

POST https://api.ocamba.com/v1/hood/containers/{container_id}/modals HTTP/1.1
Host: api.ocamba.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
{
  "status": "active",
  "type": "push",
  "name": "My first modal",
  "triggers": {},
  "filters": [
    {}
  ],
  "group": "Group A",
  "settings": {}
}
curl -X POST "https://api.ocamba.com/v1/hood/containers/{container_id}/modals" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status":"active","type":"push","name":"My first modal","triggers":{},"filters":[{}],"group":"Group A","settings":{}}'
fetch("https://api.ocamba.com/v1/hood/containers/{container_id}/modals", {
  method: "POST",
  headers: { Authorization: `Bearer ${TOKEN}`, "Content-Type": "application/json" },
  body: JSON.stringify(
    {
      "status": "active",
      "type": "push",
      "name": "My first modal",
      "triggers": {},
      "filters": [
        {}
      ],
      "group": "Group A",
      "settings": {}
    }
  )
}).then(r => r.json());
$ch = curl_init("https://api.ocamba.com/v1/hood/containers/{container_id}/modals");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "Authorization: Bearer $token",
  "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(
  [
    "status" => "active",
    "type" => "push",
    "name" => "My first modal",
    "triggers" => [],
    "filters" => [
      []
    ],
    "group" => "Group A",
    "settings" => []
  ]
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);

Responses

201 Created

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "1000001",
  "company_id": "8101252",
  "container_id": "42027",
  "status": "active",
  "type": "push",
  "name": "My first modal",
  "triggers": {
    "element_visibility": {
      "selector": ".class",
      "when_to_fire": "once-per-page",
      "min_on_screen_time": 200,
      "observe_dom_changes": true
    },
    "scroll_depth": {
      "horizontal": {
        "percentage": 75,
        "pixels": 1223
      },
      "vertical": {
        "percentage": 75,
        "pixels": 1223
      }
    },
    "click_element": {
      "enabled": true,
      "element": "header"
    },
    "timer": 200,
    "custom_event": {
      "event": "my_event"
    },
    "require_all_triggers": true
  },
  "filters": [
    {
      "variable": "1000231",
      "value": "Some-value",
      "filters": [
        {
          "variable": "1000231",
          "value": "Some-value"
        }
      ]
    }
  ],
  "group": "Group A",
  "settings": {
    "position": "top-left",
    "background_color": "green",
    "height": 500,
    "width": 700,
    "close_cta": true,
    "close_esc": true,
    "close_click": true,
    "close_auto": 3000,
    "delay": 2000
  },
  "ab_test_config": {
    "num_of_appears": 1200,
    "evaluation_window": 72,
    "winning_metric": "click_rate",
    "name": "My first ab test",
    "winner_delivery_mode": "automatic"
  },
  "messages": [
    {
      "id": "1000001",
      "company_id": "8101252",
      "container_id": "42027",
      "resource": "modal",
      "resource_id": "1001241",
      "experiment_id": "4245",
      "template_id": "2141",
      "name": "Big summer sale message",
      "settings": {
        "position": "top-left",
        "background_color": "green",
        "height": 500,
        "width": 700,
        "close_cta": true,
        "close_esc": true,
        "close_click": true,
        "close_auto": 3000,
        "delay": 2000
      },
      "variant": "B",
      "winner": 1,
      "create_time": "2021-10-29 12:47:00",
      "update_time": "2021-10-30 14:27:26"
    }
  ],
  "position": 3,
  "create_time": "2021-10-29 12:47:00",
  "update_time": "2021-10-30 14:27:26"
}

400 Bad Request

HTTP/1.1 400 Bad Request
Content-Type: application/json

{
  "code": 400,
  "title": "Bad request.",
  "message": "The request body is not valid.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}

500 Internal Server Error

HTTP/1.1 500 Internal Server Error
Content-Type: application/json

{
  "code": 500,
  "title": "Internal server error.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}
Responses