BokaMera.API.Host

<back to all web services

CreateWebhookEndpoint

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/webhook/endpointsCreate webhook endpoint
import java.math.*
import java.util.*
import net.servicestack.client.*


@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
@ValidateRequest(Validator="IsAuthenticated")
open class CreateWebhookEndpoint : ICompany
{
    /**
    * The company id, if empty will use the company id for the user you are logged in with.
    */
    @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.", IsRequired=true, ParameterType="query")
    var CompanyId:UUID? = null

    /**
    * The webhook endpoint URL.
    */
    @ApiMember(Description="The webhook endpoint URL.", IsRequired=true)
    var Url:Uri? = null

    /**
    * List of event types. At least one event type is required.
    */
    @ApiMember(Description="List of event types. At least one event type is required.", IsRequired=true)
    @Validate(Validator="NotEmpty", ErrorCode="At least one event type is required.")
    var EventTypes:ArrayList<String> = ArrayList<String>()

    var Description:String? = null
    @ApiMember()
    var Disabled:Boolean? = null
}

open class WebhookEndpoint
{
    var Description:String? = null
    var Url:String? = null
    var Id:String? = null
    var Disabled:Boolean? = null
    var EventTypes:ArrayList<String> = ArrayList<String>()
}

Kotlin CreateWebhookEndpoint DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /webhook/endpoints HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","EventTypes":["String"],"Description":"String","Disabled":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Description":"String","Url":"String","Id":"String","Disabled":false,"EventTypes":["String"]}