Orishare
API reference
POST
/customer/referral_claims

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/referral_claims" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "code": "opaque-example"  }'
{  "id": "string",  "program_id": "string",  "status": "string",  "claimed_at": "string"}
GET
/customer/referral_codes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/referral_codes"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "program_id": "string",      "program_key": "string",      "code": "string",      "revoked": true,      "created_at": "string"    }  ],  "next_cursor": "string",  "has_more": true}
POST
/customer/referral_codes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/referral_codes" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "prg_example"  }'
{  "id": "string",  "program_id": "string",  "program_key": "string",  "code": "string",  "revoked": true,  "created_at": "string"}
POST
/customer/leaderboard_profiles

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/leaderboard_profiles" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "entry_id": "entry_example",    "profile_revision": "1",    "pseudonym": "Player_1",    "visible": false  }'
{  "entry_id": "string",  "profile_revision": "string",  "pseudonym": "string",  "visible": true}
GET
/customer/leaderboards/{id}/boards/{board_id}/standings

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length
board_id*string
Length1 <= length <= 255

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
mode?string
Default"live"

Value in

  • "live"
  • "frozen"
revision_id?string
Length1 <= length <= 255
neighbors?integer
Range0 <= value <= 49
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leaderboards/string/boards/string/standings"
{  "data": [    {      "entry_id": "string",      "pseudonym": "string",      "ordinal": "string",      "score": "string"    }  ],  "own_rank": {    "ordinal": "string",    "score": "string"  },  "revision_id": "string",  "next_cursor": "string",  "has_more": true,  "state_revision": "string",  "as_of": "string",  "availability": "available"}
POST
/customer/quest_claims

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/quest_claims" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "prg_reader",    "program_version_id": "pv_reader",    "run_id": "qrun_reader"  }'
{  "id": "string",  "program_id": "string",  "program_version_id": "string",  "run_id": "string",  "participation_id": "string",  "participation_revision": "string",  "status": "claimed"}
POST
/customer/streaks/freeze_purchases

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/streaks/freeze_purchases" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "prg_daily",    "program_version_id": "pv_daily",    "quantity": 1  }'
{  "id": "string",  "program_id": "string",  "program_version_id": "string",  "purchase_id": "string",  "status": "purchased",  "quantity": 1,  "freezes": 0,  "cost": {    "currency_id": "string",    "amount": "string"  }}
POST
/customer/streaks/freeze_cancellations

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/streaks/freeze_cancellations" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "prg_daily",    "program_version_id": "pv_daily",    "purchase_id": "sfr_purchase"  }'
{  "id": "string",  "program_id": "string",  "program_version_id": "string",  "purchase_id": "string",  "status": "purchased",  "quantity": 1,  "freezes": 0,  "cost": {    "currency_id": "string",    "amount": "string"  }}
POST
/customer/streaks/repairs

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/streaks/repairs" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "prg_daily",    "program_version_id": "pv_daily"  }'
{  "id": "string",  "program_id": "string",  "program_version_id": "string",  "status": "repaired",  "current": "string",  "restored_length": "string",  "repaired_periods": 1,  "cost": {    "currency_id": "string",    "amount": "string"  }}
POST
/customer/events

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/events" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "id": "visit_123",    "name": "visit"  }'
{  "results": [    {      "id": "string",      "status": "pending",      "receipt_url": "string",      "effects": {        "mechanic_changes": [          {            "type": "streak.progressed",            "program_id": "string"          }        ],        "coupons": [          {            "entitlement_id": "string",            "offer_version_id": "string"          }        ],        "discounts": [          {            "quote_id": "string",            "offer_version_id": "string",            "currency": "string",            "subtotal_minor": "string",            "discount_minor": "string",            "total_minor": "string"          }        ],        "graph_quest_progress": [          {            "program_id": "string",            "participation_id": "string",            "run_id": "string",            "status": "enrolled",            "steps": [              {                "key": "string",                "progress": "string",                "completed": true              }            ]          }        ],        "currency_deltas": [          {            "currency_id": "string",            "amount": "string"          }        ],        "quest_progress": [          {            "program_id": "string",            "participation_id": "string",            "progress": -9007199254740991,            "target": -9007199254740991,            "completed": true          }        ]      },      "pending_followups": true    }  ]}
POST
/customer/program_enrollments

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255
If-Match*string

Required revision, checked in the owning transaction.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/program_enrollments" \  -H "Idempotency-Key: string" \  -H "If-Match: string" \  -H "Content-Type: application/json" \  -d '{    "program_id": "pg_example"  }'
{  "id": "string",  "program_id": "string",  "participation_id": "string",  "program_version_id": "string",  "program_revision": -9007199254740991,  "participation_revision": "string",  "status": "enrolled"}
GET
/customer/redemptions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/redemptions"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "reward_issuance_id": "string",      "status": "redeemed",      "redeemed_at": "string",      "cost": {        "currency_id": "string",        "amount": "string"      }    }  ],  "next_cursor": "string",  "has_more": true}
POST
/customer/redemptions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/redemptions" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "reward_issuance_id": "ri_example"  }'
{  "id": "string",  "reward_issuance_id": "string",  "status": "redeemed",  "redeemed_at": "string",  "cost": {    "currency_id": "string",    "amount": "string"  }}
GET
/customer/state

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/state"
{  "state_revision": "string",  "as_of": "string",  "pending_events": "string",  "mechanics": {    "property1": "available",    "property2": "available"  },  "links": {    "property1": "string",    "property2": "string"  }}
GET
/customer/balances

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/balances"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "currency": {        "id": "string",        "code": "string",        "name": "string",        "precision": -9007199254740991      },      "available": "string",      "pending": "string",      "lifetime_earned": "string",      "next_expiry": {        "at": "string",        "amount": "string"      }    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/tiers

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/tiers"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "program_id": "string",      "program_name": "string",      "level": "string",      "since": "string",      "qualifies_until": "string",      "grace_until": "string",      "benefits": [        {          "key": "string",          "title": "string",          "description": "string",          "icon": "string"        }      ],      "next_level": {        "name": "string",        "threshold": "string",        "benefits": [          {            "key": "string",            "title": "string",            "description": "string",            "icon": "string"          }        ]      }    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/quests

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/quests"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "kind": "run",      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string",      "program_version_id": "string",      "program_revision": -9007199254740991,      "participation_revision": "string",      "status": "string",      "progress": -9007199254740991,      "target": -9007199254740991,      "enrollable": true    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/activity

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/activity"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "type": "streak.progressed",      "at": "string",      "currency_id": "string",      "amount": "string",      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string"    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/reward_offers

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 200
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/reward_offers"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "kind": "issued_reward",      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "cost": {        "currency_id": "string",        "amount": "string"      },      "expires_at": "string",      "status": "issued",      "redeemable": true,      "reason": "insufficient_points"    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/event_receipts/{id}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length

Query Parameters

locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/event_receipts/string"
{  "state_revision": "string",  "as_of": "string",  "id": "string",  "status": "pending",  "receipt_url": "string",  "effects": {    "mechanic_changes": [      {        "type": "streak.progressed",        "program_id": "string"      }    ],    "coupons": [      {        "entitlement_id": "string",        "offer_version_id": "string"      }    ],    "discounts": [      {        "quote_id": "string",        "offer_version_id": "string",        "currency": "string",        "subtotal_minor": "string",        "discount_minor": "string",        "total_minor": "string"      }    ],    "graph_quest_progress": [      {        "program_id": "string",        "participation_id": "string",        "run_id": "string",        "status": "enrolled",        "steps": [          {            "key": "string",            "progress": "string",            "completed": true          }        ]      }    ],    "currency_deltas": [      {        "currency_id": "string",        "amount": "string"      }    ],    "quest_progress": [      {        "program_id": "string",        "participation_id": "string",        "progress": -9007199254740991,        "target": -9007199254740991,        "completed": true      }    ]  },  "pending_followups": true}
GET
/customer/program_enrollments/{id}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length

Query Parameters

locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/program_enrollments/string"
{  "state_revision": "string",  "as_of": "string",  "id": "string",  "program_id": "string",  "participation_id": "string",  "program_version_id": "string",  "program_revision": -9007199254740991,  "participation_revision": "string",  "status": "enrolled"}
GET
/customer/levels

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/levels"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string",      "program_version_id": "string",      "participation_id": "string",      "run_id": "string",      "revision": "string",      "occurrence": "string",      "currency": "string",      "basis": "string",      "current_level": {        "key": "string",        "threshold": "string",        "display": {          "title": "string",          "description": "string"        }      },      "best_level": {        "key": "string",        "threshold": "string",        "display": {          "title": "string",          "description": "string"        }      },      "next_threshold": "string",      "remaining": "string",      "qualification_window": {        "starts_at": "string",        "ends_at": "string"      },      "pending_qualification": true    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/streaks

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/streaks"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string",      "participation_id": "string",      "current": "string",      "best": "string",      "freezes": 0,      "current_period": {        "key": "string",        "progress": "string",        "status": "open"      },      "at_risk_at": "string",      "next_deadline_at": "string",      "pending_finalization": true,      "paused": true,      "program_version_id": "string",      "freeze_purchase": {        "available": true,        "currency_id": "string",        "unit_cost_minor": "string",        "max_quantity": 0      },      "repair": {        "available": true,        "price": {          "currency": "string",          "amount_minor": "string"        },        "currency_id": "string",        "expires_at": "string",        "broken_length": "string"      }    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/streaks/{participation_id}/freeze_purchases

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

participation_id*string
Length1 <= length <= 255

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/streaks/string/freeze_purchases"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "purchase_id": "string",      "program_version_id": "string",      "participation_id": "string",      "quantity": 1,      "cancelled": 0,      "consumed": 0,      "cancellable_quantity": 0,      "status": "active",      "created_at": "string"    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/badges

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/badges"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string",      "participation_id": "string",      "occurrence": "string",      "progress": "string",      "highest_rank": "string",      "owned": true,      "status": "locked",      "earned_at": "2019-08-24T14:15:22Z",      "criteria": {        "ranks": [          {            "key": "string",            "threshold": "string",            "title": "string",            "description": "string"          }        ]      },      "rarity": [        {          "rank_key": "string",          "rarity_percent": "string",          "rarity_tier": "common"        }      ]    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/leaderboard_positions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leaderboard_positions"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "board_id": "string",      "program": {        "id": "string",        "mechanic": "string",        "title": "string",        "description": "string",        "image_url": "string",        "icon": "string",        "color": "string",        "terminology": {          "singular": "string",          "plural": "string"        }      },      "program_key": "string",      "season_occurrence_id": "string",      "entry_id": "string",      "ordinal": "string",      "score": "string",      "revision_id": "string",      "profile_revision": "string",      "pseudonym": "string",      "visible": true    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/referrals

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048
locale?string
Match^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$
Lengthlength <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/referrals"
{  "state_revision": "string",  "as_of": "string",  "availability": "available",  "data": [    {      "id": "string",      "program_id": "string",      "program_key": "string",      "role": "referrer",      "status": "string",      "claimed_at": "string",      "offered_rewards": [        {          "currency": "string",          "amount_minor": "string",          "type": "currency"        }      ],      "settlement": {        "id": "string",        "status": "string",        "revision": "string",        "vests_at": "string",        "review_pending": true      }    }  ],  "next_cursor": "string",  "has_more": true}
GET
/customer/state_changes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Last-Event-ID?string

Signed customer-bound invalidation cursor; an invalid cursor requests a fresh snapshot.

Lengthlength <= 2048

Response Body

text/event-stream

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/state_changes"
"string"
POST
/customer/redemption_quotes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/redemption_quotes" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "offer_version_id": "roff_example"  }'
{  "id": "string",  "kind": "catalogue_quote",  "offer_version_id": "string",  "currency_id": "string",  "cost_minor": "string",  "expires_at": "2019-08-24T14:15:22Z",  "terms_digest": "string",  "terms": {    "title": "string",    "description": "string",    "delivery": "manual"  }}
GET
/customer/catalogue_redemptions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/catalogue_redemptions"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "reason": "string",  "has_more": true,  "next_cursor": "string",  "data": [    {      "id": "string",      "kind": "catalogue_redemption",      "quote_id": "string",      "offer_version_id": "string",      "status": "pending_fulfillment",      "revision": "string",      "issuance_id": "string",      "fulfillment_id": "string",      "display": {        "title": "string",        "description": "string"      },      "delivery": "manual"    }  ]}
POST
/customer/catalogue_redemptions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/catalogue_redemptions" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "quote_id": "rqt_example"  }'
{  "id": "string",  "kind": "catalogue_redemption",  "quote_id": "string",  "offer_version_id": "string",  "status": "pending_fulfillment",  "revision": "string",  "issuance_id": "string",  "fulfillment_id": "string"}
POST
/customer/catalogue_cancellations

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/catalogue_cancellations" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "redemption_id": "rred_example",    "expected_revision": "0",    "reason": "customer_request"  }'
{  "id": "string",  "kind": "catalogue_redemption",  "quote_id": "string",  "offer_version_id": "string",  "status": "pending_fulfillment",  "revision": "string",  "issuance_id": "string",  "fulfillment_id": "string"}
POST
/customer/catalogue_redemptions/{id}/code_disclosures

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/catalogue_redemptions/string/code_disclosures" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{}'
{  "redemption_id": "string",  "code": "string"}
GET
/customer/catalogue_offers

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/catalogue_offers"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "reason": "string",  "has_more": true,  "next_cursor": "string",  "data": [    {      "id": "string",      "kind": "catalogue_offer",      "catalogue_id": "string",      "catalogue_key": "string",      "key": "string",      "version": 1,      "display": {        "title": "string",        "description": "string"      },      "cost": {        "currency_id": "string",        "amount": "string"      },      "delivery": "manual",      "eligibility": {        "eligible": true,        "reason": "authentication_required"      }    }  ]}
GET
/customer/coupon_entitlements

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/coupon_entitlements"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "reason": "string",  "has_more": true,  "next_cursor": "string",  "data": [    {      "id": "string",      "offer_version_id": "string",      "status": "issued",      "expires_at": "2019-08-24T14:15:22Z"    }  ]}
GET
/customer/dates

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/dates"
{  "data": [    {      "customer_id": "string",      "key": "string",      "month": -9007199254740991,      "day": -9007199254740991,      "year": -9007199254740991,      "set_by": "customer",      "set_at": "2019-08-24T14:15:22Z",      "change_count": -9007199254740991,      "customer_change_allowed_at": "2019-08-24T14:15:22Z",      "editable": true    }  ]}
POST
/customer/dates/{key}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

key*string

birthday, anniversary, an operator-defined key, or the read-only signup

Match^[a-z][a-z0-9_]{0,31}$

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/dates/string" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "month": 3,    "day": 14  }'
{  "customer_id": "string",  "key": "string",  "month": -9007199254740991,  "day": -9007199254740991,  "year": -9007199254740991,  "set_by": "customer",  "set_at": "2019-08-24T14:15:22Z",  "change_count": -9007199254740991,  "customer_change_allowed_at": "2019-08-24T14:15:22Z",  "editable": true}
GET
/customer/experiments

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/experiments"
{  "data": [    {      "experiment_key": "string",      "variant_key": "string"    }  ]}
GET
/customer/notification_preferences

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/notification_preferences"
{  "unsubscribed_all": true,  "email_consent": "unknown",  "push_consent": "unknown",  "all_types": {    "email": true,    "web_push": true,    "mobile_push": true  },  "types": [    {      "type_key": "string",      "name": "string",      "class": "marketing",      "channels": {        "email": true,        "web_push": true,        "mobile_push": true      }    }  ]}
PATCH
/customer/notification_preferences

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/customer/notification_preferences" \  -H "Content-Type: application/json" \  -d '{    "types": [      {        "type_key": "streak_at_risk",        "channel": "email",        "opted_out": true      }    ]  }'
{  "unsubscribed_all": true,  "email_consent": "unknown",  "push_consent": "unknown",  "all_types": {    "email": true,    "web_push": true,    "mobile_push": true  },  "types": [    {      "type_key": "string",      "name": "string",      "class": "marketing",      "channels": {        "email": true,        "web_push": true,        "mobile_push": true      }    }  ]}
GET
/customer/notification_contact

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/notification_contact"
{  "customer_id": "string",  "email": "string",  "email_state": "ok",  "email_consent": "unknown",  "push_consent": "unknown",  "locale": "string",  "unsubscribed_all": true,  "updated_at": "2019-08-24T14:15:22Z"}
PATCH
/customer/notification_contact

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/customer/notification_contact" \  -H "Content-Type: application/json" \  -d '{    "email": "[email protected]",    "locale": "en",    "email_consent": "opted_in"  }'
{  "customer_id": "string",  "email": "string",  "email_state": "ok",  "email_consent": "unknown",  "push_consent": "unknown",  "locale": "string",  "unsubscribed_all": true,  "updated_at": "2019-08-24T14:15:22Z"}
GET
/customer/notification_devices

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/notification_devices"
{  "data": [    {      "id": "string",      "kind": "web_push",      "platform": "string",      "locale": "string",      "status": "active",      "created_at": "2019-08-24T14:15:22Z",      "last_seen_at": "2019-08-24T14:15:22Z"    }  ]}
POST
/customer/notification_devices

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/notification_devices" \  -H "Content-Type: application/json" \  -d '{    "kind": "fcm",    "token": "fcm-registration-token",    "platform": "android"  }'
{  "id": "string",  "kind": "web_push",  "platform": "string",  "locale": "string",  "status": "active",  "created_at": "2019-08-24T14:15:22Z",  "last_seen_at": "2019-08-24T14:15:22Z"}
DELETE
/customer/notification_devices/{id}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/customer/notification_devices/string"
Empty
GET
/customer/leagues

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leagues"
{  "data": [    {      "league": {        "id": "string",        "key": "string",        "name": "string"      },      "tier": {        "index": -9007199254740991,        "key": "string",        "name": "string"      },      "member_status": "active",      "period": {        "id": "string",        "key": "string",        "starts_at": "2019-08-24T14:15:22Z",        "ends_at": "2019-08-24T14:15:22Z"      },      "seconds_left": -9007199254740991,      "paused": true,      "entry": {        "cohort_id": "string",        "tier": {          "index": -9007199254740991,          "key": "string",          "name": "string"        },        "score": -9007199254740991,        "rank": -9007199254740991,        "zone": "promotion"      },      "last_result": {        "period_id": "string",        "period_key": "string",        "rank": -9007199254740991,        "outcome": "promoted",        "tier": {          "index": -9007199254740991,          "key": "string",          "name": "string"        },        "next_tier": {          "index": -9007199254740991,          "key": "string",          "name": "string"        },        "reward": [          {            "kind": "rank",            "currency": "string",            "amount": -9007199254740991          }        ],        "reward_status": "none"      }    }  ]}
GET
/customer/leagues/{id}/standings

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length <= 255

Query Parameters

period_id?string
Length1 <= length <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leagues/string/standings"
{  "standings": {    "league": {      "id": "string",      "key": "string",      "name": "string"    },    "period": {      "id": "string",      "league_id": "string",      "key": "string",      "starts_at": "2019-08-24T14:15:22Z",      "ends_at": "2019-08-24T14:15:22Z",      "status": "open",      "league_revision": -9007199254740991,      "settled_at": "2019-08-24T14:15:22Z",      "created_at": "2019-08-24T14:15:22Z"    },    "cohort": {      "id": "string",      "league_id": "string",      "period_id": "string",      "tier_index": -9007199254740991,      "bucket": "string",      "seq": -9007199254740991,      "member_count": -9007199254740991,      "created_at": "2019-08-24T14:15:22Z"    },    "tier": {      "index": -9007199254740991,      "key": "string",      "name": "string"    },    "rows": [      {        "rank": -9007199254740991,        "score": -9007199254740991,        "display_name": "string",        "avatar_url": "string",        "is_self": true,        "zone": "promotion",        "outcome": "promoted"      }    ]  }}
GET
/customer/social_profile

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/social_profile"
{  "customer_id": "string",  "display_name": "string",  "avatar_url": "string",  "visibility": "public",  "moderation": "ok",  "revision": -9007199254740991,  "created_at": "2019-08-24T14:15:22Z",  "updated_at": "2019-08-24T14:15:22Z"}
PATCH
/customer/social_profile

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/customer/social_profile" \  -H "Content-Type: application/json" \  -d '{    "display_name": "Mika",    "visibility": "public"  }'
{  "customer_id": "string",  "display_name": "string",  "avatar_url": "string",  "visibility": "public",  "moderation": "ok",  "revision": -9007199254740991,  "created_at": "2019-08-24T14:15:22Z",  "updated_at": "2019-08-24T14:15:22Z"}
GET
/customer/team

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/team"
{  "team": {    "team": {      "id": "string",      "name": "string",      "description": "string",      "join_policy": "open",      "capacity": -9007199254740991,      "member_count": -9007199254740991,      "status": "active",      "created_at": "2019-08-24T14:15:22Z",      "invite_code": "string",      "revision": -9007199254740991    },    "role": "owner",    "handle": "string",    "members": [      {        "handle": "string",        "display_name": "string",        "avatar_url": "string",        "role": "owner",        "joined_at": "2019-08-24T14:15:22Z",        "is_self": true      }    ]  }}
PATCH
/customer/team

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/customer/team" \  -H "Content-Type: application/json" \  -d '{    "name": "Night Owls",    "join_policy": "open",    "expected_revision": 3  }'
{  "team": {    "team": {      "id": "string",      "name": "string",      "description": "string",      "join_policy": "open",      "capacity": -9007199254740991,      "member_count": -9007199254740991,      "status": "active",      "created_at": "2019-08-24T14:15:22Z",      "invite_code": "string",      "revision": -9007199254740991    },    "role": "owner",    "handle": "string",    "members": [      {        "handle": "string",        "display_name": "string",        "avatar_url": "string",        "role": "owner",        "joined_at": "2019-08-24T14:15:22Z",        "is_self": true      }    ]  }}
GET
/customer/teams

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
query?string
Length1 <= length <= 40

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/teams"
{  "data": [    {      "id": "string",      "name": "string",      "description": "string",      "join_policy": "open",      "capacity": -9007199254740991,      "member_count": -9007199254740991,      "status": "active",      "created_at": "2019-08-24T14:15:22Z"    }  ],  "next_cursor": "string",  "has_more": true}
POST
/customer/teams

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/teams" \  -H "Content-Type: application/json" \  -d '{    "name": "Night Owls",    "join_policy": "invite",    "capacity": 20  }'
{  "team": {    "team": {      "id": "string",      "name": "string",      "description": "string",      "join_policy": "open",      "capacity": -9007199254740991,      "member_count": -9007199254740991,      "status": "active",      "created_at": "2019-08-24T14:15:22Z",      "invite_code": "string",      "revision": -9007199254740991    },    "role": "owner",    "handle": "string",    "members": [      {        "handle": "string",        "display_name": "string",        "avatar_url": "string",        "role": "owner",        "joined_at": "2019-08-24T14:15:22Z",        "is_self": true      }    ]  }}
POST
/customer/team/invite_codes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/team/invite_codes" \  -H "Content-Type: application/json" \  -d '{}'
{  "team": {    "team": {      "id": "string",      "name": "string",      "description": "string",      "join_policy": "open",      "capacity": -9007199254740991,      "member_count": -9007199254740991,      "status": "active",      "created_at": "2019-08-24T14:15:22Z",      "invite_code": "string",      "revision": -9007199254740991    },    "role": "owner",    "handle": "string",    "members": [      {        "handle": "string",        "display_name": "string",        "avatar_url": "string",        "role": "owner",        "joined_at": "2019-08-24T14:15:22Z",        "is_self": true      }    ]  }}
POST
/customer/team_memberships

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/team_memberships" \  -H "Content-Type: application/json" \  -d '{    "invite_code": "K7QX2M9WPA"  }'
{  "team": {    "id": "string",    "name": "string",    "description": "string",    "join_policy": "open",    "capacity": -9007199254740991,    "member_count": -9007199254740991,    "status": "active",    "created_at": "2019-08-24T14:15:22Z"  },  "joined": true}
DELETE
/customer/team_membership

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/customer/team_membership"
{  "team_id": "string",  "disbanded": true}
POST
/customer/team/members/{handle}/kick

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

handle*string
Match^[0-9a-f]{16}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/team/members/string/kick" \  -H "Content-Type: application/json" \  -d '{}'
{  "team_id": "string",  "disbanded": true}
POST
/customer/team/members/{handle}/role

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

handle*string
Match^[0-9a-f]{16}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/team/members/string/role" \  -H "Content-Type: application/json" \  -d '{    "role": "admin"  }'
{  "handle": "string",  "display_name": "string",  "avatar_url": "string",  "role": "owner",  "joined_at": "2019-08-24T14:15:22Z",  "is_self": true}
GET
/customer/team/quests

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/team/quests"
{  "team_id": "string",  "quests": [    {      "definition": {        "id": "string",        "key": "string",        "name": "string"      },      "period": {        "key": "string",        "starts_at": "2019-08-24T14:15:22Z",        "ends_at": "2019-08-24T14:15:22Z"      },      "target": -9007199254740991,      "progress": -9007199254740991,      "status": "active",      "completed_at": "2019-08-24T14:15:22Z",      "quest_id": "string",      "my_contribution": -9007199254740991,      "min_contribution": -9007199254740991,      "reward": [        {          "currency": "string",          "amount": -9007199254740991        }      ],      "my_reward_status": "pending",      "paused": true,      "members": [        {          "handle": "string",          "display_name": "string",          "avatar_url": "string",          "contributed": -9007199254740991,          "is_member": true,          "is_self": true,          "reward_status": "pending"        }      ]    }  ]}
GET
/customer/team_quest_boards/{definition}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

definition*string
Length1 <= length <= 255

Query Parameters

limit?integer
Range1 <= value <= 100
Default50

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/team_quest_boards/string"
{  "definition": {    "id": "string",    "key": "string",    "name": "string"  },  "period_key": "string",  "rows": [    {      "rank": -9007199254740991,      "team_id": "string",      "team_name": "string",      "progress": -9007199254740991,      "target": -9007199254740991,      "status": "active",      "completed_at": "2019-08-24T14:15:22Z",      "member_count": -9007199254740991,      "is_own": true    }  ],  "own": {    "rank": -9007199254740991,    "team_id": "string",    "team_name": "string",    "progress": -9007199254740991,    "target": -9007199254740991,    "status": "active",    "completed_at": "2019-08-24T14:15:22Z",    "member_count": -9007199254740991,    "is_own": true  }}
GET
/customer/friends

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

status?string
Default"accepted"

Value in

  • "accepted"
  • "incoming"
  • "outgoing"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/friends"
{  "data": [    {      "friend_code": "string",      "display_name": "string",      "avatar_url": "string",      "status": "accepted",      "requested_at": "2019-08-24T14:15:22Z",      "accepted_at": "2019-08-24T14:15:22Z"    }  ]}
POST
/customer/friend_requests

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/friend_requests" \  -H "Content-Type: application/json" \  -d '{    "code": "K7RM2XQ9TB"  }'
{  "friend": {    "friend_code": "string",    "display_name": "string",    "avatar_url": "string",    "status": "accepted",    "requested_at": "2019-08-24T14:15:22Z",    "accepted_at": "2019-08-24T14:15:22Z"  },  "replayed": true}
POST
/customer/friend_requests/{friend}/accept

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

friend*string
Length8 <= length <= 24

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/friend_requests/stringst/accept"
{  "friend": {    "friend_code": "string",    "display_name": "string",    "avatar_url": "string",    "status": "accepted",    "requested_at": "2019-08-24T14:15:22Z",    "accepted_at": "2019-08-24T14:15:22Z"  },  "replayed": true}
POST
/customer/friend_requests/{friend}/decline

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

friend*string
Length8 <= length <= 24

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/friend_requests/stringst/decline"
{  "friend": {    "friend_code": "string",    "display_name": "string",    "avatar_url": "string",    "status": "accepted",    "requested_at": "2019-08-24T14:15:22Z",    "accepted_at": "2019-08-24T14:15:22Z"  },  "replayed": true}
DELETE
/customer/friends/{code}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

code*string
Length8 <= length <= 24

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/customer/friends/stringst"
Empty
GET
/customer/blocks

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/blocks"
{  "data": [    {      "handle": "string",      "display_name": "string",      "created_at": "2019-08-24T14:15:22Z"    }  ],  "has_more": true}
POST
/customer/blocks

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/blocks" \  -H "Content-Type: application/json" \  -d '{    "code": "K7RM2XQ9TB"  }'
{  "blocked": true,  "replayed": true}
DELETE
/customer/blocks/{handle}

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

handle*string

The block handle from GET /customer/blocks; the blocked player's current friend code also works

Length8 <= length <= 40

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/customer/blocks/stringst"
Empty
GET
/customer/friend_code

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/friend_code"
{  "code": "string",  "created_at": "2019-08-24T14:15:22Z"}
POST
/customer/friend_code

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/friend_code"
{  "code": "string",  "created_at": "2019-08-24T14:15:22Z"}
POST
/customer/nudges

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/nudges" \  -H "Content-Type: application/json" \  -d '{    "code": "K7RM2XQ9TB",    "context": "league_week"  }'
{  "reaction": {    "id": "string",    "kind": "nudge",    "day_key": "string",    "context": "string",    "created_at": "2019-08-24T14:15:22Z"  },  "replayed": true}
POST
/customer/high_fives

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/high_fives" \  -H "Content-Type: application/json" \  -d '{    "code": "K7RM2XQ9TB",    "context": "league_week"  }'
{  "reaction": {    "id": "string",    "kind": "nudge",    "day_key": "string",    "context": "string",    "created_at": "2019-08-24T14:15:22Z"  },  "replayed": true}
GET
/customer/reactions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

since?string
Match^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
Formatdate-time
limit?integer
Range1 <= value <= 100
Default50

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/reactions"
{  "data": [    {      "id": "string",      "kind": "nudge",      "day_key": "string",      "context": "string",      "created_at": "2019-08-24T14:15:22Z",      "direction": "received",      "other": {        "display_name": "string",        "avatar_url": "string"      }    }  ],  "has_more": true}
GET
/customer/leagues/{id}/friend_standings

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leagues/string/friend_standings"
{  "standings": {    "league": {      "id": "string",      "key": "string",      "name": "string"    },    "period": {      "id": "string",      "key": "string",      "starts_at": "2019-08-24T14:15:22Z",      "ends_at": "2019-08-24T14:15:22Z",      "status": "string"    },    "rows": [      {        "rank": -9007199254740991,        "display_name": "string",        "avatar_url": "string",        "is_self": true,        "friend_code": "string",        "score": -9007199254740991,        "tier": {          "index": -9007199254740991,          "key": "string",          "name": "string"        }      }    ]  }}
GET
/customer/leaderboards/{id}/friend_standings

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Path Parameters

id*string
Length1 <= length <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/leaderboards/string/friend_standings"
{  "standings": {    "program": {      "id": "string",      "key": "string",      "name": "string"    },    "board": {      "id": "string",      "status": "string",      "starts_at": "2019-08-24T14:15:22Z",      "ends_at": "2019-08-24T14:15:22Z"    },    "rows": [      {        "rank": -9007199254740991,        "display_name": "string",        "avatar_url": "string",        "is_self": true,        "friend_code": "string",        "score": "string"      }    ]  }}
GET
/customer/friend_quests

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/friend_quests"
{  "data": [    {      "definition": {        "id": "string",        "key": "string",        "name": "string"      },      "period": {        "key": "string",        "starts_at": "2019-08-24T14:15:22Z",        "ends_at": "2019-08-24T14:15:22Z"      },      "target": -9007199254740991,      "reward": [        {          "currency": "string",          "amount": -9007199254740991        }      ],      "paused": true,      "quest": {        "id": "string",        "status": "active",        "target": -9007199254740991,        "progress": -9007199254740991,        "progress_self": -9007199254740991,        "progress_friend": -9007199254740991,        "friend": {          "display_name": "string",          "avatar_url": "string",          "pseudonymous": true,          "friend_code": "string"        },        "completed_at": "2019-08-24T14:15:22Z",        "reward": [          {            "currency": "string",            "amount": -9007199254740991          }        ],        "reward_status": "none"      }    }  ]}
POST
/customer/friend_quests

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/friend_quests" \  -H "Content-Type: application/json" \  -d '{    "definition": "weekly-duo",    "friend_code": "K7Q2M9XA"  }'
{  "quest": {    "definition": {      "id": "string",      "key": "string",      "name": "string"    },    "period": {      "key": "string",      "starts_at": "2019-08-24T14:15:22Z",      "ends_at": "2019-08-24T14:15:22Z"    },    "target": -9007199254740991,    "reward": [      {        "currency": "string",        "amount": -9007199254740991      }    ],    "paused": true,    "quest": {      "id": "string",      "status": "active",      "target": -9007199254740991,      "progress": -9007199254740991,      "progress_self": -9007199254740991,      "progress_friend": -9007199254740991,      "friend": {        "display_name": "string",        "avatar_url": "string",        "pseudonymous": true,        "friend_code": "string"      },      "completed_at": "2019-08-24T14:15:22Z",      "reward": [        {          "currency": "string",          "amount": -9007199254740991        }      ],      "reward_status": "none"    }  },  "created": true}
GET
/customer/friend_streaks

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/friend_streaks"
{  "data": [    {      "definition": {        "id": "string",        "key": "string",        "name": "string"      },      "friend": {        "display_name": "string",        "avatar_url": "string",        "pseudonymous": true,        "friend_code": "string"      },      "length": -9007199254740991,      "longest": -9007199254740991,      "last_day_key": "string",      "extended_today": true,      "at_risk": true,      "next_milestone": {        "length": -9007199254740991,        "reward": [          {            "currency": "string",            "amount": -9007199254740991          }        ]      },      "paused": true    }  ]}
POST
/customer/transfers

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/transfers" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "recipient": {      "external_id": "friend-42"    },    "currency": "points",    "amount": 250,    "note": "Gift to a friend"  }'
{  "id": "string",  "currency": "string",  "amount": 0,  "note": "string",  "created_at": "2019-08-24T14:15:22Z"}
POST
/customer/shop_purchases

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/shop_purchases" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "offer_id": "ofr_0123456789abcdef0123456789abcdef",    "offer_revision": 1,    "quantity": 1  }'
{  "replayed": true,  "entry_id": "string",  "offer_id": "string",  "offer": "string",  "offer_revision": -9007199254740991,  "item": "string",  "item_definition_id": "string",  "purchases": -9007199254740991,  "quantity": -9007199254740991,  "quantity_after": -9007199254740991,  "price": {    "currency": "string",    "currency_id": "string",    "amount_minor": -9007199254740991,    "total_minor": -9007199254740991  },  "cost_entry_id": "string"}
POST
/customer/inventory_consumptions

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/inventory_consumptions" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "item": "xp_boost_15m",    "quantity": 1  }'
{  "replayed": true,  "entry_ids": [    "string"  ],  "item": "string",  "item_definition_id": "string",  "consumed": -9007199254740991,  "quantity_after": -9007199254740991,  "effect": {    "type": "none"  },  "effect_result": {    "loot_table": "string",    "loot_table_id": "string",    "loot_table_version_id": "string",    "version": -9007199254740991,    "chests": -9007199254740991,    "draws": [      {        "draw_id": "string",        "unit": -9007199254740991,        "roll": -9007199254740991,        "outcome": "drawn",        "entry": "string",        "reason": "string",        "award": {          "type": "currency",          "currency": "string",          "amount_minor": 1        },        "paid": {          "type": "currency",          "currency": "string",          "currency_id": "string",          "amount_minor": -9007199254740991,          "ledger_entry_id": "string"        }      }    ],    "guaranteed": [      {        "unit": -9007199254740991,        "award": {          "type": "currency",          "currency": "string",          "amount_minor": 1        },        "paid": {          "type": "currency",          "currency": "string",          "currency_id": "string",          "amount_minor": -9007199254740991,          "ledger_entry_id": "string"        }      }    ]  }}
POST
/customer/inventory_equips

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/inventory_equips" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "item": "red_cape",    "equipped": true  }'
{  "replayed": true,  "item": "string",  "item_definition_id": "string",  "equip_slot": "string",  "equipped": true,  "unequipped": [    "string"  ]}
POST
/customer/energy_spends

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/energy_spends" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "energy": "lives",    "amount": 1  }'
{  "key": "string",  "energy_definition_id": "string",  "value": -9007199254740991,  "maximum": -9007199254740991,  "overfill_maximum": -9007199254740991,  "next_refill_at": "string",  "full_at": "string",  "unlimited_until": "string",  "paused": true,  "replayed": true,  "entry_id": "string",  "spent": -9007199254740991,  "free": true}
GET
/customer/inventory

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/inventory"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "has_more": true,  "next_cursor": "string",  "data": [    {      "item": "string",      "type": "durable",      "quantity": -9007199254740991,      "max_quantity": -9007199254740991,      "equipped": true,      "equip_slot": "string",      "effect": {        "type": "none"      },      "display": {        "property1": null,        "property2": null      },      "status": "active"    }  ]}
GET
/customer/shop_offers

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/shop_offers"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "has_more": true,  "next_cursor": "string",  "data": [    {      "id": "string",      "key": "string",      "revision": -9007199254740991,      "item": "string",      "item_type": "durable",      "item_display": {        "property1": null,        "property2": null      },      "quantity": -9007199254740991,      "price": {        "currency": "string",        "currency_id": "string",        "amount_minor": -9007199254740991      },      "per_customer_limit": -9007199254740991,      "purchased": -9007199254740991,      "remaining_limit": -9007199254740991,      "available_from": "string",      "available_until": "string"    }  ]}
GET
/customer/energy

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/energy"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "has_more": true,  "next_cursor": "string",  "data": [    {      "key": "string",      "value": -9007199254740991,      "maximum": -9007199254740991,      "overfill_maximum": -9007199254740991,      "next_refill_at": "string",      "full_at": "string",      "unlimited_until": "string",      "paused": true    }  ]}
GET
/customer/boosts

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/boosts"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "activations": [    {      "currency": "string",      "multiplier": "string",      "stacking": "extend",      "starts_at": "string",      "ends_at": "string",      "item": "string"    }  ],  "currencies": [    {      "currency": "string",      "multiplier": "string",      "ends_at": "string"    }  ]}
POST
/customer/battle_pass_claims

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Header Parameters

Idempotency-Key*string

Required. Official clients generate a UUID when omitted by the caller.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/customer/battle_pass_claims" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "pass": "season_1_pass",    "tier": "tier_1",    "track": "free"  }'
{  "replayed": true,  "claim_id": "string",  "battle_pass": "string",  "battle_pass_id": "string",  "battle_pass_version_id": "string",  "season_version_id": "string",  "tier": "string",  "track": "free",  "threshold": -9007199254740991,  "progress": -9007199254740991,  "awards": [    {      "type": "currency",      "currency": "string",      "currency_id": "string",      "amount_minor": -9007199254740991,      "ledger_entry_id": "string"    }  ]}
GET
/customer/loot_odds

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

item*string
Length1 <= length <= 64
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/loot_odds?item=string"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "item": "string",  "loot_table": "string",  "loot_table_id": "string",  "version_id": "string",  "version": -9007199254740991,  "paused": true,  "rolls": -9007199254740991,  "total_weight": -9007199254740991,  "entries": [    {      "key": "string",      "weight": -9007199254740991,      "probability": "string",      "award": {        "type": "currency",        "currency": "string",        "amount_minor": 1      },      "max_per_customer": -9007199254740991,      "budget": {        "maximum": -9007199254740991      }    }  ],  "guaranteed": [    {      "type": "currency",      "currency": "string",      "amount_minor": 1    }  ],  "pity": {    "entry_key": "string",    "after_rolls": -9007199254740991  },  "effective": {    "available": true,    "pity_forced": true,    "total_weight": -9007199254740991,    "entries": [      {        "key": "string",        "weight": -9007199254740991,        "probability": "string",        "exhausted": true,        "reason": "budget"      }    ],    "guaranteed": [      {        "type": "currency",        "currency": "string",        "amount_minor": 1      }    ]  }}
GET
/customer/battle_passes

Authorization

publishableKey customerToken
AuthorizationBearer <token>

Publishable API key for permitted client events.

In: header

X-Orishare-Customer-Token<token>

Customer session proof, required together with a production publishable key.

In: header

Query Parameters

cursor?string
Lengthlength <= 8192
limit?integer
Range1 <= value <= 100
Default50
locale?string
Length2 <= length <= 35

Header Parameters

If-None-Match?string

Private weak validator from this customer snapshot. Live authorization precedes every 304.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/customer/battle_passes"
{  "state_revision": "string",  "as_of": "2019-08-24T14:15:22Z",  "availability": "available",  "data": [    {      "battle_pass": "string",      "version": -9007199254740991,      "season": "string",      "status": "scheduled",      "paused": true,      "starts_at": "string",      "ends_at": "string",      "claims_until": "string",      "xp_currency": "string",      "progress": -9007199254740991,      "premium": true,      "next_tier": "string",      "next_tier_threshold": -9007199254740991,      "tiers": [        {          "key": "string",          "threshold": -9007199254740991,          "reached": true,          "free": {            "awards": [              {                "type": "currency",                "currency": "string",                "amount_minor": 1              }            ],            "claimed": true,            "claimable": true          },          "premium": {            "awards": [              {                "type": "currency",                "currency": "string",                "amount_minor": 1              }            ],            "claimed": true,            "claimable": true          }        }      ]    }  ],  "has_more": true,  "next_cursor": "string"}