View as Markdown

Partners

Category: Store Base URL: /store/partners Authentication: Mixed Routes: 9 routes documented

Overview#

This section documents 9 API routes for partners.

Quick Reference#

Method Endpoint Description
POST /store/partners/auth/register POST /store/partners/auth/register Register a new partner ac...
GET /store/partners/me GET /store/partners/me Get the current authenticated partner...
PATCH /store/partners/me PATCH /store/partners/me Update the current authenticated pa...
GET /store/partners/me/clicks GET /store/partners/me/clicks Get click statistics for the c...
GET /store/partners/me/commissions GET /store/partners/me/commissions Get commission history fo...
GET /store/partners/me/dashboard GET /store/partners/me/dashboard Get comprehensive dashboard...
GET /store/partners/me/offers GET /store/partners/me/offers Get all offers the current par...
GET /store/partners/me/payouts GET /store/partners/me/payouts Get payout history for the cu...
GET /store/partners/offers GET /store/partners/offers Get available public offers that ...
POST /store/partners/offers/:id/apply POST /store/partners/offers/:id/apply Apply to promote an of...

POST Store Partners Auth Register#

Endpoint: POST /store/partners/auth/register Authentication: Partner (Required)

Description#

POST /store/partners/auth/register Register a new partner account. This endpoint should be called after obtaining a registration JWT token from /auth/partner/emailpass/register. The token proves the user has verified their email/password credentials. Flow: 1. Client calls POST /auth/partner/emailpass/register with { email, password } 2. Client receives a registration token in response 3. Client calls this endpoint with the token and partner details 4. This endpoint creates the partner record and links it to the auth identity 5. Client can now authenticate with POST /auth/partner/emailpass

Request Body#

This route does not declare a validation schema, so the accepted fields are not derivable from the source. Check the handler before relying on a particular body.

Response#

Success (201):

{
  partner,
  message,
}

Example Request#

curl -X POST 'https://your-store.omnicart.cc/store/partners/auth/register' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me#

Endpoint: GET /store/partners/me Authentication: Partner (Required)

Description#

GET /store/partners/me Get the current authenticated partner's profile and stats. Returns partner details along with aggregate performance metrics.

Response#

Success:

{
  partner,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

PATCH Store Partners Me#

Endpoint: PATCH /store/partners/me Authentication: Partner (Required)

Description#

PATCH /store/partners/me Update the current authenticated partner's profile. Partners can update their contact info and payment details. They cannot change their email, company name, or status.

Request Body#

This route does not declare a validation schema, so the accepted fields are not derivable from the source. Check the handler before relying on a particular body.

Response#

Success:

{
  partner,
}

Example Request#

curl -X PATCH 'https://your-store.omnicart.cc/store/partners/me' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me Clicks#

Endpoint: GET /store/partners/me/clicks Authentication: Partner (Required)

Description#

GET /store/partners/me/clicks Get click statistics for the current partner. Supports filtering by date range and offer.

Response#

Success:

{
  clicks,
  count,
  limit,
  offset,
  stats,
  analytics,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me/clicks' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me Commissions#

Endpoint: GET /store/partners/me/commissions Authentication: Partner (Required)

Description#

GET /store/partners/me/commissions Get commission history for the current partner. Supports filtering by status and pagination.

Response#

Success:

{
  commissions,
  count,
  limit,
  offset,
  totals,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me/commissions' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me Dashboard#

Endpoint: GET /store/partners/me/dashboard Authentication: Partner (Required)

Description#

GET /store/partners/me/dashboard Get comprehensive dashboard data for the partner portal. Includes KPIs, recent activity, earnings chart data, and top offers.

Response#

Success:

{
  kpis,
  period,
  earnings,
  offers,
  chart,
  recent_activity,
  account,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me/dashboard' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me Offers#

Endpoint: GET /store/partners/me/offers Authentication: Partner (Required)

Description#

GET /store/partners/me/offers Get all offers the current partner has applied to or is approved for. Includes tracking links and performance stats for each offer.

Response#

Success:

{
  offers,
  summary,
  active_offers,
  pending_offers,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me/offers' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Me Payouts#

Endpoint: GET /store/partners/me/payouts Authentication: Partner (Required)

Description#

GET /store/partners/me/payouts Get payout history for the current partner. Shows paid commissions grouped by payment batch/date.

Response#

Success:

{
  payouts,
  summary,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/me/payouts' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'

GET Store Partners Offers#

Endpoint: GET /store/partners/offers Authentication: Partner (Optional)

Description#

GET /store/partners/offers Get available public offers that partners can apply to. If authenticated, also shows which offers the partner has already applied to.

Response#

Success:

{
  offers,
  count,
  limit,
  offset,
}

Example Request#

curl -X GET 'https://your-store.omnicart.cc/store/partners/offers' \
  -H 'Content-Type: application/json'

POST Store Partners Offers :id Apply#

Endpoint: POST /store/partners/offers/:id/apply Authentication: Partner (Required)

Description#

POST /store/partners/offers/:id/apply Apply to promote an offer. This creates a partner-offer relationship and generates a tracking link (if auto-approved) or marks as pending.

URL Parameters#

Parameter Type Required Description
id string Yes Id identifier

Request Body#

This route does not declare a validation schema, so the accepted fields are not derivable from the source. Check the handler before relying on a particular body.

Response#

Success (201):

{
  partner_offer,
  message,
}

Example Request#

curl -X POST 'https://your-store.omnicart.cc/store/partners/offers/:id/apply' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json'