Docs

SDKs nativos y plugins sin código

El mismo contrato que el SDK de JavaScript, para iOS, Android y Flutter — más integraciones listas para usar en WordPress y Shopify para equipos que prefieren no tocar código.

SDKs móviles nativos

TripticonsentSDK (iOS/macOS/tvOS, Swift + CryptoKit) y el SDK de Android (Kotlin, OkHttp, Google Tink) replican @tripticonsent/sdk método a método: recordConsent, getConsentState, getPurposes, el gate() de control de etiquetas, y verificación de justificante Ed25519 sin conexión, hecha en el propio dispositivo. Un plugin de Flutter conecta ambos mediante un MethodChannel, de modo que una sola llamada en Dart llega al SDK nativo que corresponda.

Las apps no envían cabecera Origin, así que crea la clave pk_ de la app con Allow native apps activado — si no, todas las llamadas devuelven 403. Para un usuario con sesión iniciada, pasa además un token de identidad firmado por tu backend (opción identityToken / setIdentityToken) — consulta la Guía: identificar a usuarios con sesión iniciada.
import TripticonsentSDK

let tc = TripticonsentClient(TripticonsentOptions(baseUrl: "https://api.tripticonsent.tripticode.com", apiKey: "pk_live_…"))
try await tc.recordConsent(
    RecordConsentParams(subject: .email("user@example.com"), purpose: "marketing_email", state: .granted, channel: "app"),
    idempotencyKey: UUID().uuidString
)
val tc = TripticonsentClient(TripticonsentOptions(baseUrl = "https://api.tripticonsent.tripticode.com", apiKey = "pk_live_…"))
tc.recordConsent(
    RecordConsentParams(SubjectRef.email("user@example.com"), "marketing_email", ConsentInputState.GRANTED, channel = "app"),
    idempotencyKey = UUID.randomUUID().toString(),
)
final tc = TripticonsentClient(baseUrl: 'https://api.tripticonsent.tripticode.com', apiKey: 'pk_live_…');
await tc.recordConsent(
  RecordConsentParams(subject: SubjectRef.email('user@example.com'), purpose: 'marketing_email', state: ConsentInputState.granted, channel: 'app'),
  idempotencyKey: yourOwnUniqueId(),
);
Los SDKs móviles están en acceso anticipado: con el código completo y probado, antes de publicarse en el registro de CocoaPods/SPM, Maven Central y pub.dev. Habla con tu contacto de cuenta para acceder. Igual que con el SDK de navegador, nunca incluyas una clave sk_ dentro del binario de una app — solo pk_.

Plugins sin código

Para sitios que prefieren no escribir código de integración, el mismo banner que sirve @tripticonsent/sdk se empaqueta en dos plugins:

  • WordPress (tripticonsent-consent) — una página de ajustes para tu clave pk_, un filtro script_loader_tag que añade automáticamente los atributos data-tc-* correctos, y dos shortcodes: [tripticonsent_cookie_declaration] y [tripticonsent_preferences_link].
  • Shopify — un bloque de tipo app embed (se activa en Editor de temas → App embeds, sin tocar el código del tema) que además conecta las decisiones con el propio customerPrivacy.setTrackingConsent de Shopify, para que el checkout y la analítica también las respeten. Actualmente en fase final de validación con las herramientas CLI de Shopify.
Los dos plugins envuelven el mismo paquete cmp.js que usa la etiqueta <script data-tc-api-key> — no hay lógica de consentimiento separada que mantener sincronizada.