Skip to main content
POST
Lodge a return

Authorizations

Authorization
string
header
required

API Key Authentication

Use your API key in the Authorization header:

Key Types:

Secret Keys (Server-Side Only):

  • Format: tybrite_sk_live_* (production) or tybrite_sk_test_* (sandbox)
  • Full read/write access to all endpoints
  • ⚠️ NEVER expose in client-side code or public repositories
  • Required for: write operations, authentication, payment verification, AI recommendations

Publishable Keys (Client-Safe):

  • Format: tybrite_pk_live_* (production) or tybrite_pk_test_* (sandbox)
  • Read-only access (GET requests only, plus POST semantic search)
  • ✅ Safe for client-side JavaScript, mobile apps, and public code
  • Allowed for: browsing products, search, CMS content, pricing queries

Endpoint-Specific Requirements:

  • Authentication endpoints (/v1/auth/*): Secret key required
  • Payment verification (POST /v1/payments/verify): Secret key required
  • AI Recommendations (POST /v1/recommendations): Secret key required
  • Semantic Search (POST /v1/search): Both key types allowed (read-only operation)
  • All write operations: Secret key required
  • All read operations: Both key types allowed

Using a publishable key for restricted operations returns 403 Forbidden.

Headers

x-auth-token
string

Customer session token from POST /v1/auth/login or POST /v1/auth/verify-otp. Provide exactly one of x-auth-token, x-external-auth, or x-idp-token.

x-external-auth
string

Bring-your-own-auth assertion identifying the customer. Provide exactly one of x-auth-token, x-external-auth, or x-idp-token.

x-idp-token
string

A raw token from the store's own identity provider (e.g. a Firebase ID token). Galactic Core forwards it to the store's configured Auth verifier, which validates it and returns the identity.

Verification is fail-closed: if the verifier rejects the token or is unreachable, the request is unauthenticated (401). Requires an Auth verifier to be configured for the store. Provide exactly one of x-auth-token, x-external-auth, or x-idp-token.

Query Parameters

store_id
string<uuid>

Marketplace operator key only — and required for operator keys. On a marketplace storefront, the merchant the order belongs to. Ignored for single-store keys.

Body

application/json
order_id
string<uuid>
required

The customer's online order the return is for.

Example:

"770a0622-0401-63f6-c938-557766551111"

reason_code
enum<string>
required

Why the items are being returned.

Available options:
damaged,
defective,
wrong_item,
not_as_described,
wrong_size,
no_longer_needed,
arrived_late,
other
Example:

"damaged"

items
object[]
required

The order lines being returned.

Minimum array length: 1
reason_description
string

Free-text explanation. Required when reason_code is other; optional otherwise.

Example:

"The box was crushed in transit."

return_type
enum<string>
default:full_refund

The resolution the customer is requesting.

Available options:
full_refund,
partial_refund,
exchange,
store_credit
Example:

"full_refund"

Response

Return lodged

data
object
required