Infobip Email API

Infobip Email is a cloud-based, all-in-one communication solution suited for both transactional and marketing email message delivery. It allows users to create rich, personalized, and responsive emails using API. — 35 operation path(s) and 4 webhook(s) in Infobip's published OpenAPI.

OpenAPI Specification

infobip-email-openapi.json Raw ↑
{
 "openapi":"3.1.0",
 "info":{
  "title":"Infobip OpenAPI Specification",
  "description":"OpenAPI Specification that contains all public endpoints and webhooks.",
  "contact":{
   "name":"Infobip support",
   "email":"support@infobip.com"
  },
  "version":"3.210.0",
  "x-generatedAt":"2026-07-23T15:23:56.306162599Z"
 },
 "tags":[
  {
   "name":"channels",
   "description":"Create a perfect customer experience by using the channels your customer already use and love.\n",
   "x-type":"category",
   "x-displayName":"Channels"
  },
  {
   "name":"email",
   "description":"Infobip Email is a cloud-based, all-in-one communication solution suited for both transactional and marketing email message delivery. It allows users to create rich, personalized, and responsive emails using API. Email messaging can be simple with ad-hoc one-way communication or more advanced with template management and scheduled sending.\n\n**Email validation**\nis an essential part of sending targeted emails is to ensure you have a clean list of engaged subscribers. Email validation acts as the first line of defense ensuring accuracy for both your new and existing email lists by providing if validated email is existing or not, aswell as providing you with additional info about mailbox: Valid syntax, Disposable mailbox, Role-based mailbox, Catch-all mailbox.\n",
   "x-type":"product",
   "x-displayName":"Email"
  },
  {
   "name":"email-message-sending",
   "description":"",
   "x-type":"section",
   "x-displayName":"Outbound Email"
  },
  {
   "name":"inbound-email",
   "description":"",
   "x-type":"section",
   "x-displayName":"Inbound Email"
  },
  {
   "name":"scheduled-email",
   "description":"",
   "x-type":"section",
   "x-displayName":"Manage Scheduled Email Messages"
  },
  {
   "name":"email-logs-and-reports",
   "description":"",
   "x-type":"section",
   "x-displayName":"Logs and Status Reports"
  },
  {
   "name":"email-webhooks",
   "description":"",
   "x-type":"section",
   "x-displayName":"Webhooks"
  },
  {
   "name":"email-validation",
   "description":"",
   "x-type":"section",
   "x-displayName":"Email Validation"
  },
  {
   "name":"email-domains",
   "description":"",
   "x-type":"section",
   "x-displayName":"Email Domains"
  },
  {
   "name":"email-suppression",
   "description":"",
   "x-type":"section",
   "x-displayName":"Email Suppression"
  },
  {
   "name":"email-ip-management",
   "description":"",
   "x-type":"section",
   "x-displayName":"Email IP Management"
  },
  {
   "name":"email-templates",
   "description":"",
   "x-type":"section",
   "x-displayName":"Email Templates"
  }
 ],
 "paths":{
  "/email/4/messages":{
   "post":{
    "tags":[
     "channels",
     "email",
     "email-message-sending"
    ],
    "summary":"Send email messages",
    "description":"99% of all use cases can be achieved by using this API method. Everything from sending a simple single message to a single destination, up to batch sending of personalized messages to the thousands of recipients with a single API request. Scheduling and every advanced feature you can think of is supported.",
    "externalDocs":{
     "description":"Learn more about Email channel and use cases",
     "url":"https://www.infobip.com/docs/email"
    },
    "operationId":"send-email-messages-api",
    "requestBody":{
     "content":{
      "application/json":{
       "schema":{
        "$ref":"#/components/schemas/34438aa163eb13a2a06ad96ae98170e41cc2ee8902e8b7655aba73ceb0bb23f1.EmailRequest"
       },
       "examples":{
        "Email with text with single destination":{
         "summary":"Email with text with single destination",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com"
               }
              ]
             }
            ],
            "content":{
             "subject":"Test message",
             "text":"Test body"
            }
           }
          ]
         }
        },
        "Email with template with multiple destination":{
         "summary":"Email with template with multiple destination",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com",
                "placeholders":"{\"customer_name\":\"John Smith\"}"
               },
               {
                "destination":"mike.smith@company.com",
                "placeholders":"{\"customer_name\":\"Mike Smith\"}"
               }
              ]
             }
            ],
            "content":{
             "templateId":"322307",
             "defaultPlaceholders":"{\"date\":\"20/03/2018\",\"customer_name\":\"John Smith\"}"
            }
           }
          ]
         }
        },
        "Email with HTML and placeholders with single destination":{
         "summary":"Email with HTML and placeholders with single destination",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com",
                "placeholders":"{\"destination_ph\":\"Destination placeholder\"}"
               }
              ]
             }
            ],
            "content":{
             "subject":"Test message",
             "html":"<h1>Html body</h1>\n<p>Rich HTML message body.</p>\n<div>Example with default placeholders: {{default_ph}}</div>\n<div>Example with personalized placeholders: {{to_ph}}</div>",
             "defaultPlaceholders":"{\"default_ph\":\"Default placeholder\"}"
            }
           }
          ]
         }
        },
        "Email with tracking options with multiple destinations":{
         "summary":"Email with tracking options with multiple destinations",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com"
               }
              ],
              "cc":[
               {
                "destination":"bob.smith@somecompany.com"
               }
              ],
              "bcc":[
               {
                "destination":"alice.doe@somecompany.com"
               }
              ]
             }
            ],
            "content":{
             "subject":"Test message",
             "html":"<h1>Html body</h1>\n<p>Rich HTML message body.</p>\n<div>This is link that will be shortened and tracked <a href=\"https://www.infobip.com\">link</a></div>"
            }
           }
          ],
          "options":{
           "schedule":{},
           "tracking":{},
           "clientPriority":"STANDARD"
          }
         }
        },
        "Email with attachments":{
         "summary":"Email with attachments",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com"
               }
              ]
             }
            ],
            "content":{
             "subject":"Test message",
             "text":"Text",
             "attachments":[
              {
               "type":"binary",
               "content":"Q29udGVudA==",
               "contentType":"image/png",
               "fileName":"image.png"
              },
              {
               "type":"uploadedReference",
               "contentId":"B44419205B27012D82F3BAD7B7EB37BA157EB26DCA268BD7C62F235165E04EB55EA620E2BB59715F3442C43852922601D294"
              }
             ]
            }
           }
          ]
         }
        },
        "Email with template ID":{
         "summary":"Email with template ID",
         "value":{
          "messages":[
           {
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com"
               }
              ]
             }
            ],
            "content":{
             "templateId":"100000000123456"
            }
           }
          ]
         }
        },
        "Email with IP pool ID":{
         "summary":"Email with IP pool ID",
         "value":{
          "messages":[
           {
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com"
               }
              ]
             }
            ],
            "content":{
             "subject":"Test message",
             "text":"Test body"
            },
            "ips":{
             "ipPoolId":"08A3A7608750CC6E6080325A6ADF45B6"
            }
           }
          ]
         }
        },
        "Email with masked placeholders":{
         "summary":"Email with masked placeholders",
         "value":{
          "messages":[
           {
            "sender":"jenny.smith@company.com",
            "destinations":[
             {
              "to":[
               {
                "destination":"john.smith@company.com",
                "placeholders":"{\"name\": \"JohnDoe\", \"email\": \"test@example.com\", \"phone\": \"41793026727\"}"
               }
              ]
             }
            ],
            "content":{
             "subject":"Masking sensitive placeholders , Hi {{name}}, {{email}} , {{phone}}",
             "html":"Test body {{ph1}} {{ph2}}",
             "defaultPlaceholders":"{\"ph1\": \"Default\", \"ph2\": \"HideWholePlaceholder\"}"
            },
            "placeholdersMasking":[
             {
              "name":"ph1",
              "side":"L",
              "maskChar":"=",
              "visibleChars":3
             },
             {
              "name":"ph2",
              "maskChar":"#",
              "skipChars":[
               "W"
              ]
             },
             {
              "name":"name",
              "side":"R",
              "maskChar":"+",
              "visibleChars":2
             },
             {
              "name":"email",
              "side":"L",
              "maskChar":"=",
              "delimiter":"@",
              "skipChars":[
               "_"
              ]
             },
             {
              "name":"phone",
              "side":"L",
              "maskChar":"+",
              "skipChars":[
               "-",
               "(",
               ")"
              ]
             }
            ]
           }
          ]
         }
        }
       }
      }
     },
     "required":true
    },
    "responses":{
     "200":{
      "description":"OK",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/34438aa163eb13a2a06ad96ae98170e41cc2ee8902e8b7655aba73ceb0bb23f1.EmailResponse"
        },
        "examples":{
         "Success response":{
          "summary":"Success response",
          "value":{
           "bulkId":"a28dd97c-2222-4fcf-99f1-0b557ed381da",
           "messages":[
            {
             "messageId":"a28dd97c-1ffb-4fcf-99f1-0b557ed381da",
             "status":{
              "groupId":1,
              "groupName":"PENDING",
              "id":7,
              "name":"PENDING_ENROUTE",
              "description":"Message sent to next instance"
             },
             "destination":"john.smith@company.com"
            }
           ]
          }
         },
         "Success response with multiple destinations":{
          "summary":"Success response with multiple destinations",
          "value":{
           "bulkId":"a28dd97c-2222-4fcf-99f1-0b557ed381da",
           "messages":[
            {
             "messageId":"a28dd97c-1ffb-4fcf-99f1-0b557ed381da",
             "status":{
              "groupId":1,
              "groupName":"PENDING",
              "id":7,
              "name":"PENDING_ENROUTE",
              "description":"Message sent to next instance"
             },
             "destination":"john.smith@company.com"
            },
            {
             "messageId":"2211d97c-53432-4fcf-99f1-0b557ed381da",
             "status":{
              "groupId":1,
              "groupName":"PENDING",
              "id":7,
              "name":"PENDING_ENROUTE",
              "description":"Message sent to next instance"
             },
             "destination":"john.doe@company.com"
            }
           ]
          }
         }
        }
       }
      }
     },
     "400":{
      "description":"Bad Request",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/ApiError"
        },
        "examples":{
         "Bad request":{
          "summary":"Bad request",
          "value":{
           "errorCode":"E400",
           "description":"Request cannot be processed.",
           "action":"Check the syntax, violations and adjust the request.",
           "violations":[
            {
             "property":"property.path",
             "violation":"Violation message."
            }
           ],
           "resources":[]
          }
         }
        }
       }
      }
     },
     "401":{
      "$ref":"#/components/responses/ApiError401"
     },
     "403":{
      "$ref":"#/components/responses/ApiError403"
     },
     "429":{
      "$ref":"#/components/responses/ApiError429"
     },
     "500":{
      "$ref":"#/components/responses/ApiError500"
     }
    },
    "security":[
     {
      "IBSSOTokenHeader":[]
     },
     {
      "APIKeyHeader":[]
     },
     {
      "Basic":[]
     },
     {
      "OAuth2":[]
     }
    ],
    "x-scopes":[
     "message:send",
     "email:message:send",
     "email:manage"
    ],
    "x-is-early-access":true,
    "x-throttling-info":[
     {
      "type":"time",
      "numberOfRequests":4000,
      "numberOfTimeUnits":0,
      "timeUnit":"s"
     }
    ],
    "x-versions":[
     {
      "versionNumber":4,
      "latest":true,
      "operationId":"send-email-messages-api"
     },
     {
      "versionNumber":3,
      "latest":false,
      "operationId":"send-fully-featured-email"
     }
    ]
   }
  },
  "/email/1/content":{
   "post":{
    "tags":[
     "channels",
     "email",
     "email-message-sending"
    ],
    "summary":"Upload binary content",
    "description":"This method allows you to upload binary content that you can reference when sending Email messages.",
    "operationId":"upload-binary-content",
    "parameters":[
     {
      "name":"X-Content-Id",
      "in":"header",
      "description":"Content ID that uniquely identifies the binary content.",
      "required":true,
      "style":"simple",
      "explode":false,
      "schema":{
       "type":"string"
      },
      "example":"image_1_jpg"
     },
     {
      "name":"X-Media-Type",
      "in":"header",
      "description":"Content mime type. Should be populated by standard MIME types (IANA media types).",
      "required":true,
      "style":"simple",
      "explode":false,
      "schema":{
       "type":"string"
      },
      "example":"image/jpeg"
     },
     {
      "name":"X-Validity-Period-Minutes",
      "in":"header",
      "description":"Validity period in minutes after which the content will be deleted.",
      "required":false,
      "style":"simple",
      "explode":false,
      "schema":{
       "type":"string",
       "maximum":10080,
       "minimum":1440
      },
      "example":3000
     }
    ],
    "requestBody":{
     "content":{
      "application/octet-stream":{
       "schema":{
        "type":"string",
        "format":"binary"
       },
       "examples":{
        "cURL":{
         "summary":"cURL",
         "description":"cURL",
         "value":"curl -L -X POST 'https://{baseUrl}/email/1/content' \\\n-H 'Authorization: {authorization}' \\\n-H 'Content-Type: application/octet-stream' \\\n-H 'Accept: application/json' \\\n-H 'X-Media-Type: image/jpeg' \\\n-H 'X-Content-Id: image_1_jpg' \\\n--data-binary \"@/path/to/image1.jpg\"\n"
        },
        "HTTP":{
         "summary":"HTTP",
         "description":"HTTP",
         "value":"POST /email/1/content HTTP/1.1\nHost: {baseUrl}\nAuthorization: {authorization}\nContent-Type: application/octet-stream\nAccept: application/json\nX-Content-Id: image_1_jpg\nX-Media-Type: image/jpeg\n\n(data)"
        }
       }
      }
     }
    },
    "responses":{
     "200":{
      "description":"Successful Request",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/34438aa163eb13a2a06ad96ae98170e41cc2ee8902e8b7655aba73ceb0bb23f1.UploadBinaryResult"
        }
       }
      }
     },
     "400":{
      "description":"Bad Request",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/34438aa163eb13a2a06ad96ae98170e41cc2ee8902e8b7655aba73ceb0bb23f1.ApiErrorResponse"
        },
        "examples":{
         "Response example":{
          "summary":"Response example",
          "value":{
           "bulkId":"",
           "messages":[],
           "errorMessage":"Required request header 'X-Content-Id' for method parameter type String is not present"
          }
         }
        }
       }
      }
     },
     "401":{
      "$ref":"#/components/responses/ApiException401"
     },
     "403":{
      "$ref":"#/components/responses/ApiException403"
     },
     "429":{
      "$ref":"#/components/responses/ApiException429"
     },
     "500":{
      "$ref":"#/components/responses/ApiException500"
     }
    },
    "security":[
     {
      "IBSSOTokenHeader":[]
     },
     {
      "APIKeyHeader":[]
     },
     {
      "Basic":[]
     },
     {
      "OAuth2":[]
     }
    ],
    "x-scopes":[
     "email:manage"
    ],
    "x-throttling-info":[
     {
      "type":"time",
      "numberOfRequests":500,
      "numberOfTimeUnits":0,
      "timeUnit":"s"
     }
    ]
   }
  },
  "/email/3/send":{
   "post":{
    "tags":[
     "channels",
     "email",
     "email-message-sending"
    ],
    "summary":"Send fully featured email",
    "description":"Send an email or multiple emails to a recipient or multiple recipients with CC/BCC enabled.",
    "operationId":"send-fully-featured-email",
    "requestBody":{
     "content":{
      "multipart/form-data":{
       "schema":{
        "$ref":"#/components/schemas/34438aa163eb13a2a06ad96ae98170e41cc2ee8902e8b7655aba73ceb0bb23f1.SendRequestSchema"
       },
       "examples":{
        "Send fully featured email using curl":{
         "summary":"Send fully featured email using curl",
         "description":"Send fully featured email using curl",
         "value":"\ncurl --request POST 'https://{base_url}/email/3/send' \\\n--header 'Authorization: Basic {username:password}' \\\n--form 'from=\"Jane Smith <jane.smith@somecompany.com>\"' \\\n--form 'to=\"john.smith@somedomain.com\"' \\\n--form 'to=\"alice.smith@somedomain.com\"' \\\n--form-string 'to={\"to\": \"alice.grey@somecompany.com\", \"placeholders\": {\"name\":\"Alice\"}}' \\\n--form 'replyTo=\"all.replies@somedomain.com\"' \\\n--form 'subject=\"Mail subject text and placeholder ph1\"' \\\n--form 'text=\"Dear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}\"' \\\n--form 'html=\"<h1>Html body</h1><p>Rich HTML message body.</p>\"' \\\n--form 'attachment=@\"/home/user/image.png\"' \\\n--form 'bulkId=\"customBulkId\"' \\\n--form 'intermediateReport=\"true\"' \\\n--form-string 'defaultPlaceholders={\"ph1\": \"Success\", \"ph2\": \"Example\"}' \\\n--form-string 'headers={\"List-Unsubscribe\": \"your unsubscribe link\", \"X-Custom-Header\": \"Header value\"}' \\\n--form 'notifyUrl=\"https://www.example.com/email/advanced\"' \\\n--form 'notifyContentType=\"application/json\"' \\\n--form 'trackClicks=\"true\"' \\\n--form 'trackOpens=\"false\"' \\\n--form 'trackingPixelPosition=\"TOP\"' \\\n--form 'callbackData=\"DLR callback data\"'\n--form 'ipPoolId=\"08A3A7608750CC6E6080325A6ADF45B6\"'\n"
        },
        "Send fully featured with preserved recipients email using curl":{
         "summary":"Send fully featured with preserved recipients email using curl",
         "description":"Send fully featured with preserved recipients email using curl",
         "value":"\ncurl --request POST 'https://{base_url}/email/3/send' \\\n--header 'Authorization: Basic {username:password}' \\\n--form 'from=\"Jane Smith <jane.smith@somecompany.com>\"' \\\n--form 'to=\"john.smith@somedomain.com\"' \\\n--form 'to=\"alice.smith@somedomain.com\"' \\\n--form-string 'to={\"to\": \"alice.grey@somecompany.com\", \"placeholders\": {\"name\":\"Alice\"}}' \\\n--form-string 'cc={\"to\": \"jane.grey@somecompany.com\", \"placeholders\": {\"name\":\"Jane\"}}' \\\n--form 'bcc=\"\"eve.grey@somecompany.com\"' \\\n--form 'replyTo=\"all.replies@somedomain.com\"' \\\n--form 'subject=\"Mail subject text and placeholder ph1\"' \\\n--form 'text=\"Dear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}\"' \\\n--form 'html=\"<h1>Html body</h1><p>Rich HTML message body.</p>\"' \\\n--form 'attachment=@\"/home/user/image.png\"' \\\n--form 'bulkId=\"customBulkId\"' \\\n--form 'intermediateReport=\"true\"' \\\n--form-string 'defaultPlaceholders={\"ph1\": \"Success\", \"ph2\": \"Example\"}' \\\n--form-string 'headers={\"List-Unsubscribe\": \"your unsubscribe link\", \"X-Custom-Header\": \"Header value\"}' \\\n--form 'notifyUrl=\"https://www.example.com/email/advanced\"' \\\n--form 'notifyContentType=\"application/json\"' \\\n--form 'trackClicks=\"true\"' \\\n--form 'trackOpens=\"false\"' \\\n--form 'trackingPixelPosition=\"TOP\"' \\\n--form 'callbackData=\"DLR callback data\"'\n--form 'ipPoolId=\"08A3A7608750CC6E6080325A6ADF45B6\"'\n"
        },
        "Send fully featured email using Java":{
         "summary":"Send fully featured email using Java",
         "description":"Send fully featured email using Java",
         "value":"\nimport org.springframework.core.io.FileSystemResource;\nimport org.springframework.http.*;\nimport org.springframework.util.LinkedMultiValueMap;\nimport org.springframework.web.client.RestTemplate;\nimport java.io.File;        \n        \nvar body = new LinkedMultiValueMap<String, Object>();\nbody.add(\"from\", \"Jane Smith <jane.smith@somecompany.com>\");\nbody.add(\"to\", \"john.smith@somedomain.com\");\nbody.add(\"to\", \"alice.smith@somedomain.com\");\nbody.add(\"to\", \"{\\\"to\\\": \\\"alice.grey@somecompany.com\\\", \\\"placeholders\\\": {\\\"name\\\": \\\"Alice\\\"}}\");\nbody.add(\"cc\", \"{\\\"to\\\": \\\"jane.grey@somecompany.com\\\", \\\"placeholders\\\": {\\\"name\\\": \\\"Jane\\\"}}\");\nbody.add(\"replyTo\", \"all.replies@somedomain.com\");\nbody.add(\"subject\", \"Mail subject text and placeholder ph1\");\nbody.add(\"text\", \"Dear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}\");\nbody.add(\"html\", \"<h1>Html body</h1><p>Rich HTML message body.</p>\");\nbody.add(\"attachment\", new FileSystemResource(new File(\"/home/user/file.zip\")));\nbody.add(\"bulkId\", \"customBulkId\");\nbody.add(\"intermediateReport\", \"true\");\nbody.add(\"defaultPlaceholders\", \"{\\\"ph1\\\": \\\"Success\\\", \\\"ph2\\\": \\\"Example\\\"}\");\nbody.add(\"headers\", \"{\\\"List-Unsubscribe\\\": \\\"your unsubscribe link\\\", \\\"X-Custom-Header\\\": \\\"Header value\\\"}\");\nbody.add(\"notifyUrl\", \"https://www.example.com/email/advanced\");\nbody.add(\"notifyContentType\", \"application/json\");\nbody.add(\"trackClicks\", \"true\");\nbody.add(\"trackOpens\", \"false\");\nbody.add(\"trackingPixelPosition\", \"TOP\");\nbody.add(\"callbackData\", \"DLR callback data\");\nbody.add(\"ipPoolId\", \"08A3A7608750CC6E6080325A6ADF45B6\");\nvar headers = new HttpHeaders();\nheaders.setContentType(MediaType.MULTIPART_FORM_DATA);\nheaders.add(\"Authorization\", \"Basic {username:password}\");\nvar entity = new HttpEntity<>(body, headers);\nvar restTemplate = new RestTemplate();\nrestTemplate.postForEntity(\"https://{base_url}/email/3/send\", entity, String.class);\n"
        },
        "Send fully featured email - HTTP":{
         "summary":"Send fully featured email - HTTP",
         "description":"Send fully featured email - HTTP",
         "value":"\nPOST /email/3/send HTTP/1.1\nHost: {base_url}\nAuthorization: Basic {username:password}\nContent-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW\n            \n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"from\"\n            \nJane Smith <jane.smith@somecompany.com>\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"to\"\n            \njohn.smith@somedomain.com\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"to\"\n            \nalice.smith@somedomain.com\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"to\"\n            \n{\"to\": \"alice.grey@somecompany.com\",\"placeholders\": {\"name\": \"Alice\"}}\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"cc\"\n\n{\"to\": \"jane.grey@somecompany.com\",\"placeholders\": {\"name\": \"Jane\"}}\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"replyTo\"\n            \njack.smith@somedomain.com\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"subject\"\n            \nMail subject text and placeholder ph1\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"text\"\n            \nDear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"html\"\n            \n<h1>Html body</h1><p>Rich HTML message body.</p>\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"attachment\"; filename=\"file.zip\"\n            \n(data)\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"bulkId\"\n            \ncustomBulkId\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"intermediateReport\"\n            \ntrue\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"defaultPlaceholders\"\n            \n{\"ph1\": \"Success\", \"ph2\": \"Example\"}\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"headers\"\n            \n{\"List-Unsubscribe\": \"your unsubscribe link\", \"X-CustomHeader\": \"Header\"}\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"notifyUrl\"\n            \nhttps://www.example.com/email/advanced\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"notifyContentType\"\n            \napplication/json\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"trackClicks\"\n\ntrue\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"trackOpens\"\n\nfalse\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"trackingPixelPosition\"\n\nTOP\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"callbackData\"\n            \nDLR callback data\n------WebKitFormBoundary7MA4YWxkTrZu0gW\nContent-Disposition: form-data; name=\"ipPoolId\"\n\n08A3A7608750CC6E6080325A6ADF45B6\n------WebKitFormBoundary7MA4YWxkTrZu0gW--\n"
        },
        "Send fully featured email using PHP":{
         "summary":"Send fully featured email using PHP",
         "description":"Send fully featured email using PHP",
         "value":"\n<?php\n   require_once 'HTTP/Request2.php';\n   $request = new HTTP_Request2();\n   $request->setUrl('https://{base_url}/email/3/send');\n   $request->setMethod(HTTP_Request2::METHOD_POST);\n   $request->setConfig(array(\n     'follow_redirects' => TRUE\n   ));\n   $request->setHeader(array(\n     'Authorization' => 'Basic {username:password}',\n     'Content-Type' => 'multipart/form-data'\n   ));\n            \n   $request->addPostParameter(array(\n     'from' => 'Jane Smith <jane.smith@somecompany.com>',\n     'to' => ['john.smith@somedomain.com', 'alice.smith@somedomain.com', '{\"to\": \"alice.grey@somecompany.com\", \"placeholders\": {\"Name\":\"John Doe\"}}'],\n     'cc' => '{\"to\": \"jane.grey@somecompany.com\", \"placeholders\": {\"Name\":\"Jane\"}}'\n     'replyTo' => 'all.replies@somedomain.com',\n     'subject' => 'Mail subject text and placeholder ph1',\n     'text' => 'Dear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}',\n     'html' => '<h1>Html body</h1><p>Rich HTML message body.</p>',\n     'bulkId' => 'customBulkId',\n     'intermediateReport' => 'true',\n     'defaultPlaceholders' => '{\"ph1\": \"Success\", \"ph2\": \"Example\"}'\n     'headers' => '{\"List-Unsubscribe\": \"your unsubscribe link\", \"X-Custom-Header\": \"HeaderValue\"}'\n     'notifyUrl' => 'https://www.example.com/email/advanced',\n     'notifyContentType' => 'application/json',\n     'trackClicks' => 'true',\n     'trackOpens' => 'false',\n     'trackingPixelPosition' => 'TOP',\n     'callbackData' => 'DLR callback data',\n     'ipPoolId' => '08A3A7608750CC6E6080325A6ADF45B6'\n   ));\n            \n   $request->addUpload('attachment', '/home/files/image.jpg', 'image.jpg', '<Content-Type Header>');         \n     try {\n       $response = $request->send();\n       if ($response->getStatus() == 200) {\n         echo $response->getBody();\n       } else {\n           echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .\n           $response->getBody();\n         } \n       } catch(HTTP_Request2_Exception $e) {\n          echo 'Error: ' . $e->getMessage();\n       }\n?>\n"
        },
        "Send fully featured email using C#":{
         "summary":"Send fully featured email using C#",
         "description":"Send fully featured email using C#",
         "value":"\nvar client = new RestClient(\"https://{base_url}/email/3/send\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"Authorization\", \"Basic {username:password}\");\nrequest.AlwaysMultipartFormData = true;\nrequest.AddParameter(\"from\", \"Jane Smith <jane.smith@somecompany.com>\");\nrequest.AddParameter(\"to\", \"john.smith@somedomain.com\");\nrequest.AddParameter(\"to\", \"alice.smith@somedomain.com\");\nrequest.AddParameter(\"to\", \"{\"to\": \"alice.grey@somecompany.com\", \"placeholders\": {\"name\": \"Alice\"}}\")\nrequest.AddParameter(\"cc\", \"{\"to\": \"jane.grey@somecompany.com\", \"placeholders\": {\"name\": \"Jane\"}}\")\nrequest.AddParameter(\"replyTo\", \"all.replies@somedomain.com\");\nrequest.AddParameter(\"subject\", \"Mail subject text and placeholder ph1\");\nrequest.AddParameter(\"text\", \"Dear {{name}}, this is mail body text with placeholders in body {{ph1}} and {{ph2}}\");\nrequest.AddParameter(\"html\", \"<h1>Html body</h1><p>Rich HTML message body.</p>\");\nrequest.AddParameter(\"attachment\", \"@files/image1.jpg\");\nrequest.AddParameter(\"bulkId\", \"customBulkId\");\nrequest.AddParameter(\"intermediateReport\", \"true\");\nrequest.AddParameter(\"defaultPlaceholders\", \"{\"ph1\": \"Success\", \"ph2\": \"Example\"}\")\nrequest.AddParameter(\"headers\", \"{\"List-Unsubscribe\": \"your unsubscribe link\", \"X-Custom-Header\": \"Header value\"}\")\nrequest.AddParameter(\"notifyUrl\", \"https://www.example.com/email/advanced\");\nrequest.AddParameter(\"notifyContentType\", \"application/json\");\nrequest.AddParameter(\"trackClicks\", \"true\");\nrequest.AddParameter(\"trackOpens\", \"false\");\nrequest.AddParameter(\"trackingPixelPosition\", \"TOP\");\nrequest.AddParameter(\"callbackData\", \"DLR callback data\");\nrequest.AddParameter(\"ipPoolId\", \"08A3A7608750CC6E6080325A6ADF45B6\");\nIRestResponse response = client.Execute(request);\nConsole.WriteLine(response.Content);\n"
        },
        "Send fully featured email using JavaScript":{
         "summary":"Send fully featured email using JavaScript",
         "description":"Send fully featured email using JavaScript",
         "value":"\nconst data = new FormData();\ndata.append(\"from\", \"Jane Smith <jane.smith@somecompany.com>\");\ndata.append(\"to\", \"john.smith@somedomain.com\");\ndata.append(\"to\", \"alice.smith@somedomain.com\");\ndata.append(\"to\", \"{\\\"to\\\": \\\"alice.grey@somecompany.com\\\", \\\"placeholders\\\": {\\\"name\\\": \\\"Alice\\\

# --- truncated at 32 KB (406 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infobip/refs/heads/main/openapi/infobip-email-openapi.json