Partner Onboarding & Integration Guide
This guide details the integration flow for the Social Signal Partner API. Partners can programmatically provision client accounts (Users) and register/configure tracking domains (Domains).
1. Authentication
All requests to the Partner API must be authenticated using your Partner API Key. Pass this key in the Authorization header as a Bearer token:
- Base URL:
https://beacon.socialsignal.ai/api/v2 - Partner ID (PID) for this integration:
SDL
2. API Endpoints Reference
2.1 Create Partner User
Provision a new client account under your reselling partner identity.
- Method:
POST - Path:
/partner/users - Request Body:
- Example Request (HTTPie):
http POST https://beacon.socialsignal.ai/api/v2/partner/users \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
_id="SDLR_D10000" \
company="Super Dealer" \
domains:='["superdealer.com"]' \
--ignore-stdin
- Example Response (201 Created):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"company": "Super Dealer",
"domains": ["superdealer.com"],
"status": "active"
}
2.2 List Partner Users
Retrieve all active and non-archived user records belonging to your partner ID (SDL).
- Method:
GET - Path:
/partner/users - Example Request (HTTPie):
http GET https://beacon.socialsignal.ai/api/v2/partner/users \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):
[
{
"_id": "SDLR_D10000",
"pid": "SDL",
"company": "Super Dealer",
"domains": ["superdealer.com"],
"status": "active"
}
]
2.3 Get Partner User
Retrieve details of a specific user account under your partner namespace.
- Method:
GET - Path:
/partner/users/SDLR_D10000 - Example Request (HTTPie):
http GET https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000 \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"company": "Super Dealer",
"domains": ["superdealer.com"],
"status": "active"
}
2.4 Update Partner User
Modify fields on a specific user record.
- Method:
PATCH - Path:
/partner/users/SDLR_D10000 - Request Body:
- Example Request (HTTPie):
http PATCH https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000 \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
company="Super Dealer Group" \
status="active" \
--ignore-stdin
- Example Response (200 OK):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"company": "Super Dealer Group",
"domains": ["superdealer.com"],
"status": "active"
}
2.5 Delete/Archive Partner User
Soft-deletes a client user account. This marks their status as archived and disables their tracking capabilities.
- Method:
DELETE - Path:
/partner/users/SDLR_D10000 - Example Request (HTTPie):
http DELETE https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000 \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):
2.6 Create/Replace Domain Config
Add or completely replace the tracking configuration of a domain for a specific user.
[!NOTE] The
monthlyCreditsfield must be set to one of the allowed subscription increments:0,75,250,1000, or2500.
- Method:
PUT - Path:
/partner/users/SDLR_D10000/domains/superdealer.com - Request Body:
{
"enablement": true,
"instantCredits": 100,
"weeklyCredits": 0,
"monthlyCredits": 250,
"minVisitsToMatch": 2,
"status": "active"
}
- Example Request (HTTPie):
http PUT https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000/domains/superdealer.com \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
enablement:=true \
instantCredits:=100 \
weeklyCredits:=0 \
monthlyCredits:=250 \
minVisitsToMatch:=2 \
status="active" \
--ignore-stdin
- Example Response (200 OK):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"domain": "superdealer.com",
"enablement": true,
"instantCredits": 100,
"weeklyCredits": 0,
"monthlyCredits": 250,
"minVisitsToMatch": 2,
"status": "active",
"collectLeads": false
}
2.7 List Partner Domains
Retrieve all configured domains for a specific user.
- Method:
GET - Path:
/partner/users/SDLR_D10000/domains - Example Request (HTTPie):
http GET https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000/domains \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):
[
{
"_id": "SDLR_D10000",
"pid": "SDL",
"domain": "superdealer.com",
"enablement": true,
"instantCredits": 100,
"weeklyCredits": 0,
"monthlyCredits": 250,
"minVisitsToMatch": 2,
"status": "active",
"collectLeads": false
}
]
2.8 Get Partner Domain Config
Retrieve configuration details for a specific registered domain.
- Method:
GET - Path:
/partner/users/SDLR_D10000/domains/superdealer.com - Example Request (HTTPie):
http GET https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000/domains/superdealer.com \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"domain": "superdealer.com",
"enablement": true,
"instantCredits": 100,
"weeklyCredits": 0,
"monthlyCredits": 250,
"minVisitsToMatch": 2,
"status": "active",
"collectLeads": false
}
2.9 Update Partner Domain Config
Selectively update properties of an active domain config.
- Method:
PATCH - Path:
/partner/users/SDLR_D10000/domains/superdealer.com - Request Body:
- Example Request (HTTPie):
http PATCH https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000/domains/superdealer.com \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
minVisitsToMatch:=3 \
enablement:=false \
--ignore-stdin
- Example Response (200 OK):
{
"_id": "SDLR_D10000",
"pid": "SDL",
"domain": "superdealer.com",
"enablement": false,
"instantCredits": 100,
"weeklyCredits": 0,
"monthlyCredits": 250,
"minVisitsToMatch": 3,
"status": "active",
"collectLeads": false
}
2.10 Delete/Archive Domain Config
Soft-deletes a domain configuration. This sets the status to archived and sets enablement to false.
- Method:
DELETE - Path:
/partner/users/SDLR_D10000/domains/superdealer.com - Example Request (HTTPie):
http DELETE https://beacon.socialsignal.ai/api/v2/partner/users/SDLR_D10000/domains/superdealer.com \
Authorization:"Bearer <YOUR_PARTNER_API_KEY>" \
--ignore-stdin
- Example Response (200 OK):