BokaMera.API.Host

<back to all web services

CreateNewsItem

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/newsAdd a news itemAdd a news item to the company of the currently logged in user, only administrators are allowed to add news items.
import java.math.*
import java.util.*
import net.servicestack.client.*


@ValidateRequest(Validator="IsAuthenticated")
open class CreateNewsItem : 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.")
    var CompanyId:UUID? = null

    /**
    * The news item header, keep this short and concise
    */
    @ApiMember(Description="The news item header, keep this short and concise", IsRequired=true)
    var Heading:String? = null

    /**
    * The news body text
    */
    @ApiMember(Description="The news body text", IsRequired=true)
    var Body:String? = null

    /**
    * Valid url to a image associated with the news
    */
    @ApiMember(Description="Valid url to a image associated with the news")
    var ImageUrl:Uri? = null

    /**
    * The timestamp from which the newsitem should be visible from
    */
    @ApiMember(Description="The timestamp from which the newsitem should be visible from", IsRequired=true)
    var From:Date? = null

    /**
    * The timestamp to which the newsitem should be visible to
    */
    @ApiMember(Description="The timestamp to which the newsitem should be visible to", IsRequired=true)
    var To:Date? = null
}

open class NewsItemQueryResponse
{
    /**
    * The news item id
    */
    @ApiMember(Description="The news item id")
    var Id:Int? = null

    /**
    * Heading of the news item
    */
    @ApiMember(Description="Heading of the news item")
    var Heading:String? = null

    /**
    * Body of the news item
    */
    @ApiMember(Description="Body of the news item")
    var Body:String? = null

    /**
    * Url to a image associated with the news
    */
    @ApiMember(Description="Url to a image associated with the news")
    var ImageUrl:Uri? = null

    /**
    * The timestamp from which the newsitem should be visible from
    */
    @ApiMember(Description="The timestamp from which the newsitem should be visible from", IsRequired=true)
    var From:Date? = null

    /**
    * The timestamp to which the newsitem should be visible to
    */
    @ApiMember(Description="The timestamp to which the newsitem should be visible to", IsRequired=true)
    var To:Date? = null

    /**
    * The timestamp when news was created
    */
    @ApiMember(Description="The timestamp when news was created", IsRequired=true)
    var Created:Date? = null

    var ResponseStatus:ResponseStatus? = null
}

Kotlin CreateNewsItem DTOs

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

HTTP + JSV

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

POST /news HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	Heading: String,
	Body: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: 0,
	Heading: String,
	Body: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}