BokaMera.API.Host

<back to all web services

UpdateReference

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin, SuperAdminVisma
The following routes are available for this service:
PUT/references/{Id}Update a referenceUpdate a reference
import Foundation
import ServiceStack

// @ValidateRequest(Validator="IsAuthenticated")
public class UpdateReference : ICompany, Codable
{
    /**
    * 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 var companyId:String?

    /**
    * Id of the reference
    */
    // @ApiMember(Description="Id of the reference", IsRequired=true, ParameterType="path")
    public var id:String

    /**
    * Internal Id of the reference. Example could be the Booking Id
    */
    // @ApiMember(Description="Internal Id of the reference. Example could be the Booking Id")
    public var ownerId:String?

    /**
    * The type of reference, you can name this parameter what you like. Example could be system_bookingid where the system is the external system
    */
    // @ApiMember(Description="The type of reference, you can name this parameter what you like. Example could be system_bookingid where the system is the external system")
    public var referenceType:String

    /**
    * The external data. Could be a Id or a JSON object or anything
    */
    // @ApiMember(Description="The external data. Could be a Id or a JSON object or anything")
    public var externalData:String

    required public init(){}
}

public class ReferenceQueryResponse : Codable
{
    /**
    * The company id
    */
    // @ApiMember(Description="The company id")
    public var companyId:String

    /**
    * Id of the reference
    */
    // @ApiMember(Description="Id of the reference")
    public var id:String

    /**
    * Internal Id of the reference. Example could be the Booking Id
    */
    // @ApiMember(Description="Internal Id of the reference. Example could be the Booking Id")
    public var ownerId:String

    /**
    * The type of reference, you can name this parameter what you like. Example could be system_bookingid where the system is the external system
    */
    // @ApiMember(Description="The type of reference, you can name this parameter what you like. Example could be system_bookingid where the system is the external system")
    public var referenceType:String

    /**
    * The external data. Could be a Id or a JSON object or anything
    */
    // @ApiMember(Description="The external data. Could be a Id or a JSON object or anything")
    public var externalData:String

    /**
    * Will show when the reference was updated.
    */
    // @ApiMember(DataType="datetime", Description="Will show when the reference was updated.")
    public var updated:Date

    /**
    * Will show when the reference was created.
    */
    // @ApiMember(DataType="datetime", Description="Will show when the reference was created.")
    public var created:Date

    /**
    * Will show who created the reference.
    */
    // @ApiMember(DataType="datetime", Description="Will show who created the reference.")
    public var createdBy:String

    /**
    * Will show who update the reference.
    */
    // @ApiMember(DataType="datetime", Description="Will show who update the reference.")
    public var updatedBy:String

    public var responseStatus:ResponseStatus

    required public init(){}
}


Swift UpdateReference 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.

PUT /references/{Id} HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

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

{
	ReferenceType: String,
	ExternalData: String,
	CreatedBy: String,
	UpdatedBy: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}