| PUT | /technology/{Id} |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
Object = TypeVar('Object')
class TechnologyTier(str, Enum):
PROGRAMMING_LANGUAGE = 'ProgrammingLanguage'
CLIENT = 'Client'
HTTP = 'Http'
SERVER = 'Server'
DATA = 'Data'
SOFTWARE_INFRASTRUCTURE = 'SoftwareInfrastructure'
OPERATING_SYSTEM = 'OperatingSystem'
HARDWARE_INFRASTRUCTURE = 'HardwareInfrastructure'
THIRD_PARTY_SERVICES = 'ThirdPartyServices'
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TechnologyBase:
id: Optional[int] = None
name: Optional[str] = None
vendor_name: Optional[str] = None
vendor_url: Optional[str] = None
product_url: Optional[str] = None
logo_url: Optional[str] = None
description: Optional[str] = None
created: Optional[datetime.datetime] = None
created_by: Optional[str] = None
last_modified: Optional[datetime.datetime] = None
last_modified_by: Optional[str] = None
owner_id: Optional[str] = None
slug: Optional[str] = None
logo_approved: Optional[bool] = None
is_locked: Optional[bool] = None
tier: Optional[TechnologyTier] = None
last_status_update: Optional[datetime.datetime] = None
organization_id: Optional[int] = None
comments_post_id: Optional[int] = None
view_count: Optional[int] = None
fav_count: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Technology(TechnologyBase):
pass
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateTechnologyResponse:
result: Optional[Technology] = None
response_status: Optional[ResponseStatus] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateTechnology(IPut):
id: Optional[int] = None
name: Optional[str] = None
vendor_name: Optional[str] = None
vendor_url: Optional[str] = None
product_url: Optional[str] = None
logo_url: Optional[str] = None
description: Optional[str] = None
is_locked: Optional[bool] = None
tier: Optional[TechnologyTier] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /technology/{Id} HTTP/1.1
Host: techstacks.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateTechnology xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel">
<Description>String</Description>
<Id>0</Id>
<IsLocked>false</IsLocked>
<LogoUrl>String</LogoUrl>
<Name>String</Name>
<ProductUrl>String</ProductUrl>
<Tier>ProgrammingLanguage</Tier>
<VendorName>String</VendorName>
<VendorUrl>String</VendorUrl>
</UpdateTechnology>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<UpdateTechnologyResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel">
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<Result xmlns:d2p1="http://schemas.datacontract.org/2004/07/TechStacks.ServiceModel.Types">
<d2p1:CommentsPostId>0</d2p1:CommentsPostId>
<d2p1:Created>0001-01-01T00:00:00</d2p1:Created>
<d2p1:CreatedBy>String</d2p1:CreatedBy>
<d2p1:Description>String</d2p1:Description>
<d2p1:FavCount>0</d2p1:FavCount>
<d2p1:Id>0</d2p1:Id>
<d2p1:IsLocked>false</d2p1:IsLocked>
<d2p1:LastModified>0001-01-01T00:00:00</d2p1:LastModified>
<d2p1:LastModifiedBy>String</d2p1:LastModifiedBy>
<d2p1:LastStatusUpdate>0001-01-01T00:00:00</d2p1:LastStatusUpdate>
<d2p1:LogoApproved>false</d2p1:LogoApproved>
<d2p1:LogoUrl>String</d2p1:LogoUrl>
<d2p1:Name>String</d2p1:Name>
<d2p1:OrganizationId>0</d2p1:OrganizationId>
<d2p1:OwnerId>String</d2p1:OwnerId>
<d2p1:ProductUrl>String</d2p1:ProductUrl>
<d2p1:Slug>String</d2p1:Slug>
<d2p1:Tier>ProgrammingLanguage</d2p1:Tier>
<d2p1:VendorName>String</d2p1:VendorName>
<d2p1:VendorUrl>String</d2p1:VendorUrl>
<d2p1:ViewCount>0</d2p1:ViewCount>
</Result>
</UpdateTechnologyResponse>