Skip to content

Events

The events API allows you create and manage events on your integration.

Create an event

Post
bash
https://api.bunce.so/v1/events

Creates an event.

If successful, your response includes a copy of the new event entity. If there is an error with any of the parameters, it will return a 422 HTTP status code with details in an error object.

Request

Body Parameters required

name string requiredEvent name
description string requiredEvent description
parameters array<{ name: string; type: string; required: boolean }> requiredEvent parameters
bash
curl --request POST \
  --url https://api.bunce.so/v1/events \
  --header 'Content-Type: application/json' \
  --header 'X-Authorization: sk_live_************************' \
  --data '{
    "name": "Successful Purchase Event",
    "description": "Event to be triggered on User Successful Purchase",
    "parameters": [
        { "name": "email", "type": "text", "required": true },
        { "name": "amount", "type": "numeric", "required": false },
        { "name": "datetime", "type": "timestamp", "required": false }
    ]
}'
go
import (
	"fmt"
	"strings"
	"net/http"
	"io/ioutil"
)

url := "https://api.bunce.so/v1/events"

payload := strings.NewReader("{\n  \"name\": \"Successful Purchase Event\",\n    \"description\": \"Event to be triggered on User Successful Purchase\",\n    \"parameters\": [\n        {\"name\": \"email\", \"type\": \"Text\", \"required\": true},\n        {\"name\": \"amount\", \"type\": \"Numeric\", \"required\": false},\n   {\"name\": \"datetime\", \"type\": \"timestamp\", \"required\": false}\n   ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("X-Authorization", "sk_live_************************")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)

fmt.Println(res)
fmt.Println(string(body))
js
import  from 'node-fetch'

let  = 'https://api.bunce.so/v1/events'

let  = {
  : 'POST',
  : {
    'X-Authorization': 'sk_live_************************',
    'Content-Type': 'application/json',
  },
  : `{
    "name": "Successful Purchase Event",
    "description": "Event to be triggered on User Successful Purchase",
    "parameters": [
        {"name": "email", "type": "text", "required": true},
        {"name": "amount", "type": "numeric", "required": false},
        { "name": "datetime", "type": "timestamp", "required": false }
    ]
  }`,
}

(, )
  .then(() => .json())
  .then(() => .())
  .catch(() => .('error:' + ))
php
<?php

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->append('{
    name": "Successful Purchase Event",
    "description": "Event to be triggered on User Successful Purchase",
    "parameters": [
        {"name": "email", "type": "text", "required": true},
        {"name": "amount", "type": "numeric", "required": false},
        { "name": "datetime", "type": "timestamp", "required": false }
    ]
}');

$request->setRequestUrl('https://api.bunce.so/v1/events');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setHeaders([
  'X-Authorization' => 'sk_live_************************',
  'Content-Type' => 'application/json'
]);

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
java
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.bunce.so/v1/events"))
    .header("X-Authorization", "sk_live_************************")
    .header("Content-Type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"name\": \"Successful Purchase Event\",\n    \"description\": \"Event to be triggered on User Successful Purchase\",\n    \"parameters\": [\n        {\"name\": \"email\", \"type\": \"Text\", \"required\": true},\n        {\"name\": \"amount\", \"type\": \"Numeric\", \"required\": false},\n   {\"name\": \"datetime\", \"type\": \"Timestamp\", \"required\": false}\n   ]\n}"))
    .build();

HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());

System.out.println(response.body());

Response

json
{
  "success": true,
  "data": {
    "id": "9bb6212d-42f4-446d-8a9c-0436d276ec04",
    "name": "Successful Purchase Event",
    "description": "Event to be triggered on User Successful Purchase",
    "parameters": [
      {
        "name": "email",
        "type": "text",
        "required": true
      },
      {
        "name": "amount",
        "type": "numeric",
        "required": false
      },
      {
        "name": "datetime",
        "type": "timestamp",
        "required": false
      }
    ],
    "created_at": "2024-04-02T13:43:49.000000Z"
  },
  "message": "Event created successfully"
}