| POST | /v4/images |
|---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports ImageServiceAPI.ServiceModel.V4.Requests
Imports ImageServiceAPI.ServiceModel.Models
Imports ImageServiceAPI.ServiceModel.V4.Responses
Namespace Global
Namespace ImageServiceAPI.ServiceModel.Models
Public Enum ImageProvider
None
Cloudinary
End Enum
End Namespace
Namespace ImageServiceAPI.ServiceModel.V4.Requests
<DataContract>
Public Partial Class PostImageRequest
Inherits V4BaseRequest
Implements IPostImageRequest
Public Sub New()
Attributes = New Dictionary(Of String, String)
End Sub
<DataMember(Name:="provider")>
Public Overridable Property Provider As ImageProvider
<DataMember(Name:="providerImageId")>
Public Overridable Property ProviderImageId As String
<DataMember(Name:="attributes")>
Public Overridable Property Attributes As Dictionary(Of String, String)
End Class
<DataContract>
Public Partial Class V4BaseRequest
End Class
End Namespace
Namespace ImageServiceAPI.ServiceModel.V4.Responses
<DataContract>
Public Partial Class PostImageResponse
Inherits V4BaseResponse
Implements IPostImageResponse
End Class
<DataContract>
Public Partial Class V4BaseResponse
<DataMember(Name:="status")>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v4/images HTTP/1.1
Host: image-service-api.qa.platform.georiot.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
provider: None,
providerImageId: String,
attributes:
{
String: String
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
status:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}