Skip to content
PartnersMy logo
AffiliatesCampaignsFor companies
EspañolEnglish
Log inSign up
AffiliatesCampaignsFor companies
EspañolEnglish
Log inSign up

Join PartnersMy

The platform where brands and affiliates grow together.

Competitive commissions, real-time tracking and secure payouts. Everything you need to monetize your traffic or scale your affiliate program.

Create free accountBrowse campaigns

PartnersMy

  • About us
  • Careers
  • Promotions
  • News

Affiliates / Advertisers / Agencies

  • Welcome bonus
  • Affiliates
  • Advertisers
  • Agencies

Tools

  • Monetize your traffic

Legal

  • Help Center
  • Legal Notice
  • Terms
  • Privacy
  • Cookies
PartnersMy
© 2018–2026 PartnersMy
  1. Home
  2. Advanced API
  3. Authentication

Advanced API

Authentication

PartnersMy uses different methods depending on access type: API key for integrations, JWT for the dashboard and OAuth for social signup.

OverviewAuthenticationProgramsPromotionsTrackingWebhooksErrors

API key (for /api/v1 endpoints)

External integrations use an API key with the ps_ prefix.

Send it in the x-api-key: ps_xxx header or Authorization: Bearer ps_xxx.

The key is stored hashed (SHA-256) and never in plain text.

Create keys from Settings → API in the dashboard. They're shown only once.

You can have multiple active keys and revoke them individually.

Each key tracks the last-used date and can have an expiration date.

JWT session (for /api/ endpoints)

The dashboard uses a JWT obtained on login.

Send the token as Authorization: Bearer {jwt}.

It refreshes automatically with refresh tokens (7-day httpOnly cookie).

These endpoints do NOT work with API keys — they require an active session.

Magic code (passwordless login)

Request a 6-digit code to your email with POST /api/auth/magic-code.

Verify with POST /api/auth/magic-code/verify — returns JWT + refresh.

The code expires after 10 minutes.

For new accounts use /api/auth/register-magic and /api/auth/register-magic/verify.

Social OAuth

Google and LinkedIn are available for signup and login.

Start the flow at GET /api/auth/social/{provider}.

If the email matches an existing account, it links automatically.

You can unlink a provider from Settings if you have a password or another social account active.

Security

Store API keys only on the server. Never expose them in client-side code.

Revoke keys immediately if they're leaked.

Always use HTTPS. Unencrypted HTTP requests are rejected.

Refresh tokens rotate on every use — a new one invalidates the previous.