help.partners.title
help.partners.intro
help.partners.becomingTitle
help.partners.becomingText
- help.partners.becomingStep1
- help.partners.becomingStep2
- help.partners.becomingStep3
- help.partners.becomingStep4
- help.partners.becomingStep5
help.partners.becomingCommissionLabel
help.partners.becomingCommissionText
help.partners.oauthTitle
help.partners.oauthText
help.partners.oauthRegisterTitle
- help.partners.oauthRegisterStep1
- help.partners.oauthRegisterStep2
- help.partners.oauthRegisterStep3
- help.partners.oauthRegisterStep4
help.partners.oauthFlowTitle
help.partners.oauthFlowText
https://apertur.ca/oauth/authorize? client_id=your_client_id& redirect_uri=https://your-app.com/callback& response_type=code& scope=sessions:write destinations:read& state=random_csrf_token
help.partners.oauthExchangeTitle
help.partners.oauthExchangeText
curl -X POST https://api.apertur.ca/oauth/token \
-H "Content-Type: application/json" \
-d '{
"grant_type": "authorization_code",
"client_id": "your_client_id",
"client_secret": "your_client_secret",
"code": "auth_code_from_callback",
"redirect_uri": "https://your-app.com/callback"
}'help.partners.oauthTokenTitle
help.partners.oauthTokenText
Authorization: Bearer oat_xxxxxxxxxxxx
help.partners.sdkTitle
help.partners.sdkText
Public Key
Each OAuth app gets a unique public key (format: aptr_pk_...). This key is safe to expose in frontend code and is used to initialize the SDK. You can find it in your OAuth app settings.
Allowed Domains
Restrict which domains can use your public key by configuring allowed domains. Wildcards are supported: *.example.com matches any subdomain including nested ones (e.g. app.example.com, staging.app.example.com). Leave empty during development to allow all origins.
Installation
<script src="https://cdn.apertur.ca/aptr-connect.js"></script>
Usage
<script>
AptrConnect.init({ publicKey: "aptr_pk_your_key_here" });
document.getElementById("connect-btn").addEventListener("click", () => {
AptrConnect.authorize({
scopes: ["upload:create", "project:read"],
onSuccess: (result) => {
// Send result.code to your backend to exchange for a token
console.log("Authorization code:", result.code);
},
onError: (err) => console.error(err),
});
});
</script>help.partners.sdkDescription Full SDK documentation →
help.partners.commissionTitle
help.partners.commissionText
help.partners.commissionDashboardTitle
help.partners.commissionDashboardText
help.partners.commissionReferralTitle
help.partners.commissionReferralText
help.partners.commissionOauthTitle
help.partners.commissionOauthText
help.partners.paypalTitle
help.partners.paypalText
- help.partners.paypalStep1
- help.partners.paypalStep2
- help.partners.paypalStep3
- help.partners.paypalStep4
help.partners.paypalSchedule
help.partners.paypalTimelineLabel
help.partners.paypalTimelineText
help.partners.bestPracticesTitle
help.partners.bestPracticesTokenTitle
help.partners.bestPracticesTokenText
help.partners.bestPracticesScopesTitle
help.partners.bestPracticesScopesText
help.partners.bestPracticesSandboxTitle
help.partners.bestPracticesSandboxText
help.partners.bestPracticesDocsTitle
help.partners.bestPracticesDocsText
help.common.relatedArticles
help.common.wasHelpful
help.common.needMoreHelp help.common.contactSupport