Brands
21 endpoints from the published OpenAPI import.
List My Brands
List all brands the current user is a member of.
Returns brands with the user's role in each brand. For super_admin, returns ALL brands with admin role.
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
Create Brand
Create a new brand.
The current user becomes the owner of the brand.
Try it
Examples
cURL
curl -X POST 'https://spideriq.ai/api/v1/brands' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"brand_name": "string",
"slug": "string"
}'Python
import httpx
resp = httpx.post(
"https://spideriq.ai/api/v1/brands",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"brand_name": "string", "slug": "string"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands", {
method: "POST",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"brand_name": "string", "slug": "string"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"brand_name": "string", "slug": "string"}`)
req, _ := http.NewRequest("POST", "https://spideriq.ai/api/v1/brands", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
201 | Successful Response |
422 | Validation Error |
Get Brand
Get brand details.
User must be a member of the brand.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/{brand_id}' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/{brand_id}",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/{brand_id}", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Update Brand
Update brand details.
Requires admin or owner role in the brand.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X PATCH 'https://spideriq.ai/api/v1/brands/{brand_id}' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"brand_name": "string",
"subscription_status": "inactive",
"is_active": true,
"billing_email": "user@example.com"
}'Python
import httpx
resp = httpx.patch(
"https://spideriq.ai/api/v1/brands/{brand_id}",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"brand_name": "string", "subscription_status": "inactive", "is_active": true, "billing_email": "user@example.com"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}", {
method: "PATCH",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"brand_name": "string", "subscription_status": "inactive", "is_active": true, "billing_email": "user@example.com"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"brand_name": "string", "subscription_status": "inactive", "is_active": true, "billing_email": "user@example.com"}`)
req, _ := http.NewRequest("PATCH", "https://spideriq.ai/api/v1/brands/{brand_id}", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Get Brand Settings
Get brand settings. Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/{brand_id}/settings' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/{brand_id}/settings",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/settings", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/{brand_id}/settings", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Update Brand Settings
Update brand settings. Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X PATCH 'https://spideriq.ai/api/v1/brands/{brand_id}/settings' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"default_rate_limit": 0,
"default_campaign_quota_daily": 0,
"default_campaign_quota_monthly": 0,
"default_campaign_max_concurrent": 0,
"default_campaign_max_locations": 0,
"default_auto_campaign_enabled": true,
"default_auto_campaign_rate_per_hour": 0,
"default_auto_campaign_capacity_threshold": 0,
"fuzziq_enabled": true,
"opensearch_enabled": true,
"brand_voice": "string",
"brand_tone": "string",
"brand_name_meaning": "string",
"brand_promise": "string",
"logo_url": "string"
}'Python
import httpx
resp = httpx.patch(
"https://spideriq.ai/api/v1/brands/{brand_id}/settings",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"default_rate_limit": 0, "default_campaign_quota_daily": 0, "default_campaign_quota_monthly": 0, "default_campaign_max_concurrent": 0, "default_campaign_max_locations": 0, "default_auto_campaign_enabled": true, "default_auto_campaign_rate_per_hour": 0, "default_auto_campaign_capacity_threshold": 0, "fuzziq_enabled": true, "opensearch_enabled": true, "brand_voice": "string", "brand_tone": "string", "brand_name_meaning": "string", "brand_promise": "string", "logo_url": "string"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/settings", {
method: "PATCH",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"default_rate_limit": 0, "default_campaign_quota_daily": 0, "default_campaign_quota_monthly": 0, "default_campaign_max_concurrent": 0, "default_campaign_max_locations": 0, "default_auto_campaign_enabled": true, "default_auto_campaign_rate_per_hour": 0, "default_auto_campaign_capacity_threshold": 0, "fuzziq_enabled": true, "opensearch_enabled": true, "brand_voice": "string", "brand_tone": "string", "brand_name_meaning": "string", "brand_promise": "string", "logo_url": "string"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"default_rate_limit": 0, "default_campaign_quota_daily": 0, "default_campaign_quota_monthly": 0, "default_campaign_max_concurrent": 0, "default_campaign_max_locations": 0, "default_auto_campaign_enabled": true, "default_auto_campaign_rate_per_hour": 0, "default_auto_campaign_capacity_threshold": 0, "fuzziq_enabled": true, "opensearch_enabled": true, "brand_voice": "string", "brand_tone": "string", "brand_name_meaning": "string", "brand_promise": "string", "logo_url": "string"}`)
req, _ := http.NewRequest("PATCH", "https://spideriq.ai/api/v1/brands/{brand_id}/settings", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Upload Brand Logo
Upload brand logo. Requires admin access.
The image will be:
- Center-cropped to square
- Resized to 256x256 max
- Converted to WebP format
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X POST 'https://spideriq.ai/api/v1/brands/{brand_id}/logo' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"file": "string"
}'Python
import httpx
resp = httpx.post(
"https://spideriq.ai/api/v1/brands/{brand_id}/logo",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"file": "string"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/logo", {
method: "POST",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"file": "string"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"file": "string"}`)
req, _ := http.NewRequest("POST", "https://spideriq.ai/api/v1/brands/{brand_id}/logo", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Delete Brand Logo
Delete brand logo. Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X DELETE 'https://spideriq.ai/api/v1/brands/{brand_id}/logo' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.delete(
"https://spideriq.ai/api/v1/brands/{brand_id}/logo",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/logo", {
method: "DELETE",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("DELETE", "https://spideriq.ai/api/v1/brands/{brand_id}/logo", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Get Brand Information
Get brand business information. Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/{brand_id}/information' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/{brand_id}/information",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/information", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/{brand_id}/information", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Update Brand Information
Update brand business information. Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X PATCH 'https://spideriq.ai/api/v1/brands/{brand_id}/information' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"company_name": "string",
"website": "string",
"description": "string",
"industry": "string",
"phone": "string",
"mobile": "string",
"street1": "string",
"street2": "string",
"city": "string",
"state": "string",
"postcode": "string",
"country": "string",
"tax_id": "string",
"vat_id": "string",
"support_email": "user@example.com",
"linkedin": "string",
"youtube": "string",
"instagram": "string",
"x": "string",
"facebook": "string"
}'Python
import httpx
resp = httpx.patch(
"https://spideriq.ai/api/v1/brands/{brand_id}/information",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"company_name": "string", "website": "string", "description": "string", "industry": "string", "phone": "string", "mobile": "string", "street1": "string", "street2": "string", "city": "string", "state": "string", "postcode": "string", "country": "string", "tax_id": "string", "vat_id": "string", "support_email": "user@example.com", "linkedin": "string", "youtube": "string", "instagram": "string", "x": "string", "facebook": "string"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/information", {
method: "PATCH",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"company_name": "string", "website": "string", "description": "string", "industry": "string", "phone": "string", "mobile": "string", "street1": "string", "street2": "string", "city": "string", "state": "string", "postcode": "string", "country": "string", "tax_id": "string", "vat_id": "string", "support_email": "user@example.com", "linkedin": "string", "youtube": "string", "instagram": "string", "x": "string", "facebook": "string"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"company_name": "string", "website": "string", "description": "string", "industry": "string", "phone": "string", "mobile": "string", "street1": "string", "street2": "string", "city": "string", "state": "string", "postcode": "string", "country": "string", "tax_id": "string", "vat_id": "string", "support_email": "user@example.com", "linkedin": "string", "youtube": "string", "instagram": "string", "x": "string", "facebook": "string"}`)
req, _ := http.NewRequest("PATCH", "https://spideriq.ai/api/v1/brands/{brand_id}/information", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
List Brand Members
List all members of a brand.
User must be a member of the brand to view.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/{brand_id}/members' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/{brand_id}/members",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/members", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/{brand_id}/members", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Update Member
Update a member's role or position.
Requires admin access. Cannot modify owners.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true | |
member_user_id | path | string | true |
Try it
Examples
cURL
curl -X PATCH 'https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"role": "owner",
"position": "string",
"status": "active"
}'Python
import httpx
resp = httpx.patch(
"https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"role": "owner", "position": "string", "status": "active"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}", {
method: "PATCH",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"role": "owner", "position": "string", "status": "active"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"role": "owner", "position": "string", "status": "active"}`)
req, _ := http.NewRequest("PATCH", "https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Remove Member
Remove a member from the brand.
Requires admin access. Cannot remove owners.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true | |
member_user_id | path | string | true |
Try it
Examples
cURL
curl -X DELETE 'https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.delete(
"https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}", {
method: "DELETE",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("DELETE", "https://spideriq.ai/api/v1/brands/{brand_id}/members/{member_user_id}", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
List Brand Invitations
List invitations for a brand.
Requires admin access to the brand.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true | |
status | query | any | false | Filter by status: pending, accepted, expired, canceled |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/{brand_id}/invitations' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/{brand_id}/invitations",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/invitations", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/{brand_id}/invitations", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Create Invitation
Invite a user to join the brand.
Requires admin access. Sends an email invitation.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true |
Try it
Examples
cURL
curl -X POST 'https://spideriq.ai/api/v1/brands/{brand_id}/invitations' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"email": "user@example.com",
"role": "member"
}'Python
import httpx
resp = httpx.post(
"https://spideriq.ai/api/v1/brands/{brand_id}/invitations",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"email": "user@example.com", "role": "member"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/invitations", {
method: "POST",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"email": "user@example.com", "role": "member"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"email": "user@example.com", "role": "member"}`)
req, _ := http.NewRequest("POST", "https://spideriq.ai/api/v1/brands/{brand_id}/invitations", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
201 | Successful Response |
422 | Validation Error |
Revoke Invitation
Revoke a pending invitation.
Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true | |
invitation_id | path | integer | true |
Try it
Examples
cURL
curl -X DELETE 'https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.delete(
"https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}", {
method: "DELETE",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("DELETE", "https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Resend Invitation
Resend an invitation (generates new token, resets expiry).
Requires admin access.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
brand_id | path | integer | true | |
invitation_id | path | integer | true |
Try it
Examples
cURL
curl -X POST 'https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}/resend' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.post(
"https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}/resend",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}/resend", {
method: "POST",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("POST", "https://spideriq.ai/api/v1/brands/{brand_id}/invitations/{invitation_id}/resend", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
View Invitation By Token
View invitation details by token.
This is a public endpoint (no auth required) so users can see the invitation details before signing up/logging in.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
token | path | string | true |
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/invitations/view/{token}' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/invitations/view/{token}",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/invitations/view/{token}", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/invitations/view/{token}", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Accept Invitation
Accept an invitation to join a brand.
The invitation token is obtained from the invitation email link. User must be logged in to accept. This endpoint uses session-only auth because the user may not be provisioned in dashboard_users yet.
Try it
Examples
cURL
curl -X POST 'https://spideriq.ai/api/v1/brands/invitations/accept' \
-H 'Authorization: Bearer <token>' \
-H 'Content-Type: application/json' \
-d '{
"token": "string"
}'Python
import httpx
resp = httpx.post(
"https://spideriq.ai/api/v1/brands/invitations/accept",
headers={"Authorization": "Bearer <token>", "Content-Type": "application/json"},
json={"token": "string"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/invitations/accept", {
method: "POST",
headers: { "Authorization": "Bearer <token>", "Content-Type": "application/json" },
body: JSON.stringify({"token": "string"})
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{"token": "string"}`)
req, _ := http.NewRequest("POST", "https://spideriq.ai/api/v1/brands/invitations/accept", body)
req.Header.Set("Authorization", "Bearer <token>")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error |
Get My Pending Invitations
Get pending invitations for the current user's email.
Useful to show invitations on the dashboard.
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/invitations/pending' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/invitations/pending",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/invitations/pending", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/invitations/pending", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |
List All Brands
List all brands in the system.
Super admin only.
Try it
Examples
cURL
curl -X GET 'https://spideriq.ai/api/v1/brands/admin/all' \
-H 'Authorization: Bearer <token>'Python
import httpx
resp = httpx.get(
"https://spideriq.ai/api/v1/brands/admin/all",
headers={"Authorization": "Bearer <token>"},
)
resp.raise_for_status()
print(resp.json())JavaScript
const resp = await fetch("https://spideriq.ai/api/v1/brands/admin/all", {
method: "GET",
headers: { "Authorization": "Bearer <token>" }
});
const data = await resp.json();
console.log(data);Go
package main
import (
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://spideriq.ai/api/v1/brands/admin/all", nil)
req.Header.Set("Authorization", "Bearer <token>")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
}Responses
| Status | Description |
|---|---|
200 | Successful Response |