| Requires any of the roles: | superadmin, bookingsupplier-administrator-write |
| PUT | /feature/{CompanyId}/{Id} | Set a company feature flag override | Sets the per-company IsEnabled override for a feature flag. SuperAdmin and ApplicationAdmin can always toggle; CompanyAdmin can toggle only for their own company and only when the flag has CompanyAdminCanToggle = true. |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Namespace Global
Namespace BokaMera.API.ServiceModel.Dtos
Public Partial Class CompanyFeatureFlagResponse
Public Overridable Property Id As Integer
Public Overridable Property Name As String
Public Overridable Property IsEnabled As Boolean
Public Overridable Property IsPublic As Boolean
Public Overridable Property CompanyAdminCanToggle As Boolean
Public Overridable Property ResponseStatus As ResponseStatus
End Class
<ApiResponse(Description:="Returned if the flag is not toggleable for this caller", StatusCode:=400)>
<ApiResponse(Description:="Returned if the feature flag or company was not found", StatusCode:=404)>
<ApiResponse(Description:="Returned if the current user is not allowed to perform the action", StatusCode:=401)>
<ValidateRequest(Validator:="IsAuthenticated")>
Public Partial Class SetCompanyFeatureFlag
Implements ICompany
'''<Summary>
'''The company id.
'''</Summary>
<ApiMember(Description:="The company id.", IsRequired:=true, ParameterType:="path")>
Public Overridable Property CompanyId As Guid? Implements ICompany.CompanyId
'''<Summary>
'''The feature flag id.
'''</Summary>
<ApiMember(Description:="The feature flag id.", IsRequired:=true, ParameterType:="path")>
Public Overridable Property Id As Integer
'''<Summary>
'''Whether the feature is enabled for this company.
'''</Summary>
<ApiMember(Description:="Whether the feature is enabled for this company.", IsRequired:=true)>
Public Overridable Property IsEnabled As Boolean
End Class
End Namespace
End Namespace
VB.NET SetCompanyFeatureFlag DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /feature/{CompanyId}/{Id} HTTP/1.1
Host: api.bookmore.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","Id":0,"IsEnabled":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"Id":0,"Name":"String","IsEnabled":false,"IsPublic":false,"CompanyAdminCanToggle":false,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}