customer.mint_social_session
Mint a shopper session from a provider (Google/Apple) id_token the storefront already verified. Provisions on first login; the kernel never talks to the provider. Claims the guest orders this e-mail placed in this store.
- Scope:
public - System: no
- Reachable from:
POST /v1/customer/commands/customer.mint_social_session— an ANONYMOUS face:x-forge-storeis required, no credential is sent, and it is never on/v1/commands/* - Events:
customer.registered,customer.updated
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "properties": { "client_ip": { "type": "string" }, "email": { "format": "email", "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "type": "string" }, "email_verified": { "type": "boolean" }, "factor_assertion": { "type": "string" }, "name": { "type": "string" }, "provider": { "enum": [ "google", "apple" ], "type": "string" }, "subject": { "minLength": 1, "type": "string" } }, "required": [ "provider", "email", "subject", "email_verified" ], "type": "object"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "claimed_orders": { "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "customer_id": { "type": "string" }, "expires_at": { "type": "string" }, "token": { "type": "string" } }, "required": [ "customer_id", "token", "expires_at", "claimed_orders" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)