curl --request DELETE \
--url https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId} \
--header 'x-access-token: <api-key>'import requests
url = "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}"
headers = {"x-access-token": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'x-access-token': '<api-key>'}};
fetch('https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"x-access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-access-token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}")
.header("x-access-token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-access-token"] = '<api-key>'
response = http.request(request)
puts response.read_bodySoft-delete a sponsor
Soft-delete a sponsor. Can be restored with the restore endpoint. Requires the write:sponsors scope.
This deletes the group, not just its sponsor role. The path names the role you are calling under, but the record that gets soft-deleted is the underlying group, so:
-
A group holding both roles loses its exhibitor role too. After this call it is absent from both searches and both
GETs answer404. -
A group linked to other events is removed from those events as well — it is no longer returned by any event’s sponsor or exhibitor search across the organization.
This matches the admin UI, where the unit of deletion is the group, not one of its roles. There is no role-scoped or event-scoped delete on this API. If you only want to stop listing a partner for one season, do not call this endpoint.
POST /v1/event/{eventId}/sponsors/{sponsorId}/restore reverses it with the same reach — both roles and every event come back — so nothing is lost permanently.
curl --request DELETE \
--url https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId} \
--header 'x-access-token: <api-key>'import requests
url = "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}"
headers = {"x-access-token": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'x-access-token': '<api-key>'}};
fetch('https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"x-access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("x-access-token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}")
.header("x-access-token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://public-api.sessionboard.com/v1/event/{eventId}/sponsors/{sponsorId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["x-access-token"] = '<api-key>'
response = http.request(request)
puts response.read_bodyAuthorizations
Organization API token. Generate from Organization Settings → API Tokens.
Response
Sponsor deleted. The response has no body — do not expect a 200 or a JSON payload.

