Orishare
API reference
GET
/portal_configurations

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048

Header Parameters

X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

Response Body

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/portal_configurations"
{  "data": [    {      "id": "string",      "key": "string",      "name": "string",      "status": "active",      "draft": {        "schema": "portal/v1",        "allowed_parent_origins": [          "string"        ],        "surfaces": [          {            "surface": "streak",            "programs": [              "string"            ]          }        ],        "layout": {          "mode": "inline",          "launcher_position": "bottom_right"        },        "brand": {          "name": "string",          "logo_asset_id": "string",          "theme": "light",          "light": {            "accent": "string",            "accent_ink": "string",            "canvas": "string",            "ink": "string"          },          "dark": {            "accent": "string",            "accent_ink": "string",            "canvas": "string",            "ink": "string"          },          "radius": "none",          "font": "system"        },        "locale": {          "default": "string",          "supported": [            "string"          ],          "follow_parent": true,          "strings": {            "property1": {              "property1": "string",              "property2": "string"            },            "property2": {              "property1": "string",              "property2": "string"            }          }        },        "referral": {          "share_url_template": "string"        }      },      "revision": 1,      "session_generation": 1,      "active_version": {        "id": "string",        "number": 1,        "digest": "string",        "created_by": "string",        "created_at": "string"      },      "created_at": "string",      "updated_at": "string"    }  ],  "next_cursor": "string",  "has_more": true}
POST
/portal_configurations

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

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

curl -X POST "https://example.com/portal_configurations" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "key": "rewards",    "name": "Rewards widget",    "draft": {      "schema": "portal/v1",      "allowed_parent_origins": [        "https://shop.example"      ],      "surfaces": [        {          "surface": "activity"        }      ],      "layout": {        "mode": "inline"      },      "brand": {        "name": "Rewards",        "theme": "light",        "light": {          "accent": "#1d4ed8",          "accent_ink": "#ffffff",          "canvas": "#ffffff",          "ink": "#111111"        },        "radius": "medium",        "font": "system"      },      "locale": {        "default": "en",        "supported": [          "en"        ],        "follow_parent": true      }    }  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
GET
/portal_configurations/{id}

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

Response Body

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/portal_configurations/string"
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string",  "readiness": {    "portal_origin_configured": true,    "widget_origin": "string",    "customer_surface_active": true,    "parent_origins_missing_from_client_configuration": [      "string"    ],    "surfaces_not_shown": [      {        "source": "active",        "surface": "string",        "mechanic": "string",        "mode": "hidden"      }    ],    "loopback_origins_allowed": true  }}
PATCH
/portal_configurations/{id}

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length
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

curl -X PATCH "https://example.com/portal_configurations/string" \  -H "Idempotency-Key: string" \  -H "If-Match: string" \  -H "Content-Type: application/json" \  -d '{    "name": "Rewards widget",    "draft": {      "schema": "portal/v1",      "allowed_parent_origins": [        "https://shop.example"      ],      "surfaces": [        {          "surface": "activity"        }      ],      "layout": {        "mode": "inline"      },      "brand": {        "name": "Rewards",        "theme": "light",        "light": {          "accent": "#1d4ed8",          "accent_ink": "#ffffff",          "canvas": "#ffffff",          "ink": "#111111"        },        "radius": "medium",        "font": "system"      },      "locale": {        "default": "en",        "supported": [          "en"        ],        "follow_parent": true      }    }  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
GET
/portal_configurations/{id}/versions

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Query Parameters

limit?integer
Range1 <= value <= 100
Default50
cursor?string
Lengthlength <= 2048

Header Parameters

X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

Response Body

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/portal_configurations/string/versions"
{  "data": [    {      "id": "string",      "number": 1,      "digest": "string",      "created_by": "string",      "created_at": "string",      "portal_id": "string",      "document": {        "schema": "portal/v1",        "allowed_parent_origins": [          "string"        ],        "surfaces": [          {            "surface": "streak",            "programs": [              "string"            ]          }        ],        "layout": {          "mode": "inline",          "launcher_position": "bottom_right"        },        "brand": {          "name": "string",          "logo_asset_id": "string",          "theme": "light",          "light": {            "accent": "string",            "accent_ink": "string",            "canvas": "string",            "ink": "string"          },          "dark": {            "accent": "string",            "accent_ink": "string",            "canvas": "string",            "ink": "string"          },          "radius": "none",          "font": "system"        },        "locale": {          "default": "string",          "supported": [            "string"          ],          "follow_parent": true,          "strings": {            "property1": {              "property1": "string",              "property2": "string"            },            "property2": {              "property1": "string",              "property2": "string"            }          }        },        "referral": {          "share_url_template": "string"        }      }    }  ],  "next_cursor": "string",  "has_more": true}
POST
/portal_configurations/{id}/versions

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

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

curl -X POST "https://example.com/portal_configurations/string/versions" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "expected_revision": 2  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
POST
/portal_configurations/{id}/activations

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

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

curl -X POST "https://example.com/portal_configurations/string/activations" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "version_id": "ptv_0192f0c0a0b07c3d8e9f0a1b2c3d4e5f",    "expected_revision": 3  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
POST
/portal_configurations/{id}/disable

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

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

curl -X POST "https://example.com/portal_configurations/string/disable" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "expected_revision": 3  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
POST
/portal_configurations/{id}/enable

Authorization

AuthorizationBearer <token>

Secret API key bound to an environment.

In: header

Path Parameters

id*string
Length1 <= length <= 64

Header Parameters

Idempotency-Key*string

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

Length1 <= length <= 255
X-Orishare-Environment?string

Required for selected-environment authorization branches; API keys use their bound environment.

Length1 <= length
X-Orishare-Audit-Reason?string

Required for staff authorization. Records the reason for staff access.

Length1 <= length

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

curl -X POST "https://example.com/portal_configurations/string/enable" \  -H "Idempotency-Key: string" \  -H "Content-Type: application/json" \  -d '{    "expected_revision": 3  }'
{  "id": "string",  "key": "string",  "name": "string",  "status": "active",  "draft": {    "schema": "portal/v1",    "allowed_parent_origins": [      "string"    ],    "surfaces": [      {        "surface": "streak",        "programs": [          "string"        ]      }    ],    "layout": {      "mode": "inline",      "launcher_position": "bottom_right"    },    "brand": {      "name": "string",      "logo_asset_id": "string",      "theme": "light",      "light": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "dark": {        "accent": "string",        "accent_ink": "string",        "canvas": "string",        "ink": "string"      },      "radius": "none",      "font": "system"    },    "locale": {      "default": "string",      "supported": [        "string"      ],      "follow_parent": true,      "strings": {        "property1": {          "property1": "string",          "property2": "string"        },        "property2": {          "property1": "string",          "property2": "string"        }      }    },    "referral": {      "share_url_template": "string"    }  },  "revision": 1,  "session_generation": 1,  "active_version": {    "id": "string",    "number": 1,    "digest": "string",    "created_by": "string",    "created_at": "string"  },  "created_at": "string",  "updated_at": "string"}
GET
/public/portals/{portal_id}

Path Parameters

portal_id*string
Length1 <= length <= 64

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/public/portals/string"
{  "portal_id": "string",  "version_id": "string",  "version_number": 1,  "digest": "string",  "document": {    "property1": null,    "property2": null  },  "widget_origin": "string"}