Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
POST | /news | Add a news item | Add 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.*;
public class dtos
{
@ValidateRequest(Validator="IsAuthenticated")
public static class CreateNewsItem implements 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.")
public UUID CompanyId = null;
/**
* The news item header, keep this short and concise
*/
@ApiMember(Description="The news item header, keep this short and concise", IsRequired=true)
public String Heading = null;
/**
* The news body text
*/
@ApiMember(Description="The news body text", IsRequired=true)
public String Body = null;
/**
* Valid url to a image associated with the news
*/
@ApiMember(Description="Valid url to a image associated with the news")
public Uri ImageUrl = 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)
public Date From = 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)
public Date To = null;
public UUID getCompanyId() { return CompanyId; }
public CreateNewsItem setCompanyId(UUID value) { this.CompanyId = value; return this; }
public String getHeading() { return Heading; }
public CreateNewsItem setHeading(String value) { this.Heading = value; return this; }
public String getBody() { return Body; }
public CreateNewsItem setBody(String value) { this.Body = value; return this; }
public Uri getImageUrl() { return ImageUrl; }
public CreateNewsItem setImageUrl(Uri value) { this.ImageUrl = value; return this; }
public Date getFrom() { return From; }
public CreateNewsItem setFrom(Date value) { this.From = value; return this; }
public Date getTo() { return To; }
public CreateNewsItem setTo(Date value) { this.To = value; return this; }
}
public static class NewsItemQueryResponse
{
/**
* The news item id
*/
@ApiMember(Description="The news item id")
public Integer Id = null;
/**
* Heading of the news item
*/
@ApiMember(Description="Heading of the news item")
public String Heading = null;
/**
* Body of the news item
*/
@ApiMember(Description="Body of the news item")
public String Body = null;
/**
* Url to a image associated with the news
*/
@ApiMember(Description="Url to a image associated with the news")
public Uri ImageUrl = 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)
public Date From = 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)
public Date To = null;
/**
* The timestamp when news was created
*/
@ApiMember(Description="The timestamp when news was created", IsRequired=true)
public Date Created = null;
public ResponseStatus ResponseStatus = null;
public Integer getId() { return Id; }
public NewsItemQueryResponse setId(Integer value) { this.Id = value; return this; }
public String getHeading() { return Heading; }
public NewsItemQueryResponse setHeading(String value) { this.Heading = value; return this; }
public String getBody() { return Body; }
public NewsItemQueryResponse setBody(String value) { this.Body = value; return this; }
public Uri getImageUrl() { return ImageUrl; }
public NewsItemQueryResponse setImageUrl(Uri value) { this.ImageUrl = value; return this; }
public Date getFrom() { return From; }
public NewsItemQueryResponse setFrom(Date value) { this.From = value; return this; }
public Date getTo() { return To; }
public NewsItemQueryResponse setTo(Date value) { this.To = value; return this; }
public Date getCreated() { return Created; }
public NewsItemQueryResponse setCreated(Date value) { this.Created = value; return this; }
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public NewsItemQueryResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
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: application/json
Content-Type: application/json
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","Heading":"String","Body":"String"}
HTTP/1.1 200 OK Content-Type: application/json 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"}}}