Ascio Web Service v3

PHP 5 Classes CreateOrder

Unexpire Mark

The THCH-entry will be auto-renewed. It will be renewed at the expire-date. Please use Expire to activate Auto-Expire.

CreateOrderResponse CreateOrder(SecurityHeaderDetails $securityHeader,CreateOrderRequest $request)

Response codes

ResultCodeMessageValue
200OK
401Authorization failed
501Syntax error in parameters or arguments
506Required attribute missing in request

CreateOrder Request

PropertyType
request

CreateOrderResponse

PropertyDescription
CreateOrderResult
OrderInfo
ResultCodeExample: 1
ResultMessage
Errors

Used in Classes

PropertyValue
requestMarkOrderRequest
OrderTypeUnxpire

PHP 5 Classes example

<?php
namespace ascio\v3\examples;
require("../service/autoload.php");
require("../../lib/AscioConfig.php");
use ascio\v3 as ascio;
use ascio\lib as lib;
function createOrderExample() {
	$config = new lib\Config();
	$env = $config->get("testing"); //testing or live
	$credentials = array("Account"=>$env->getAccount(), "Password" => $env->getPassword());
	$headers = [];
	$headers[] = new \SoapHeader("http://www.ascio.com/2013/02","SecurityHeaderDetails", $credentials, false);
	$headers[] = new \SoapHeader("http://www.ascio.com/2013/02","ImpersonationHeaderDetails", ["TransactionAccount" => "mysubaccount"], false);	
	$ascioClient = new ascio\AscioService(array("trace" => true),$env->getWsdl("v3"));
	$ascioClient->__setSoapHeaders($headers);

	$owner =  new ascio\Registrant();
	$owner->setFirstName("John");
	$owner->setLastName("Doe");
	$owner->setOrgName("Ascio");
	$owner->setAddress1("Address1Test");
	$owner->setAddress2("Address2Test");
	$owner->setCity("CityTest");
	$owner->setState("StateTest");
	$owner->setPostalCode("888349");
	$owner->setCountryCode("DK");
	$owner->setPhone("+45.123456789");
	$owner->setFax("+45.987654321");
	$owner->setEmail($config->getEmail());
	$owner->setType("owner");
	$owner->setDetails("DetailsTest");
	$owner->setOrganisationNumber("OrganisationNumberTest");
	$owner->setVatNumber("VatNumberTest");
	$owner->setNexusCategory("NexusCategoryTest");

	$keyValue =  new ascio\KeyValue();
	$keyValue->setKey("Title");
	$keyValue->setValue("Mr.");

	$resellerExtensions =  new ascio\Extensions();
	$resellerExtensions->setKeyValue([
		""Title",
		""Mrs."
	]);

	$reseller =  new ascio\Contact();
	$reseller->setFirstName("John");
	$reseller->setLastName("Doe");
	$reseller->setOrgName("Ascio");
	$reseller->setAddress1("Address1Test");
	$reseller->setAddress2("Address2Test");
	$reseller->setCity("CityTest");
	$reseller->setState("StateTest");
	$reseller->setPostalCode("888349");
	$reseller->setCountryCode("DK");
	$reseller->setPhone("+45.123456789");
	$reseller->setFax("+45.987654321");
	$reseller->setEmail($config->getEmail());
	$reseller->setType("owner");
	$reseller->setDetails("DetailsTest");
	$reseller->setOrganisationNumber("OrganisationNumberTest");
	$reseller->setExtensions($resellerExtensions);

	$keyValue =  new ascio\KeyValue();
	$keyValue->setKey("Title");
	$keyValue->setValue("Mr.");

	$markExtensions =  new ascio\Extensions();
	$markExtensions->setKeyValue([$keyValue]);

	$mark =  new ascio\TreatyOrStatuteMark();
	$mark->setHandle("JD123");
	$mark->setMarkName("MarkNameTest");
	$mark->setMarkId("MarkIdTest");
	$mark->setAuthInfo("X4FF!zu");
	$mark->setServiceType(ascio\MarkServiceType::Standard);
	$mark->setGoodsAndServicesDescription("GoodsAndServicesDescriptionTest");
	$mark->setLabels([
	]);
	$mark->setClaimEmailNotification1("ClaimEmailNotification1Test");
	$mark->setClaimEmailNotification2("ClaimEmailNotification2Test");
	$mark->setClaimEmailNotification3("ClaimEmailNotification3Test");
	$mark->setClaimEmailNotification4("ClaimEmailNotification4Test");
	$mark->setClaimEmailNotification5("ClaimEmailNotification5Test");
	$mark->setNotificationFrequency(ascio\NotificationFrequencyType::Daily);
	$mark->setOwner($owner);
	$mark->setReseller($reseller);
	$mark->setExtensions($markExtensions);
	$mark->setObjectComment("Example Object Comment");
	$mark->setTitle("TitleTest");
	$mark->setReferenceNumber("ReferenceNumberTest");
	$mark->setCountry("DK");
	$mark->setRegion("RegionTest");
	$mark->setProtectionDate(new \DateTime());
	$mark->setExecutionDate(new \DateTime());

	$markOrderDocument =  new ascio\MarkOrderDocument();
	$markOrderDocument->setFileName("anything.jpg");
	$markOrderDocument->setContent(base64_encode(123));
	$markOrderDocument->setDocType(ascio\MarkOrderDocType::TrademarkAssigneeDeclaration);

	$documents =  new ascio\ArrayOfMarkOrderDocument();
	$documents->setMarkOrderDocument([$markOrderDocument]);

	$request =  new ascio\MarkOrderRequest();
	$request->setType(ascio\OrderType::Register);
	$request->setPeriod(1);
	$request->setTransactionComment("TransactionCommentTest");
	$request->setComments("RegistrarTag");
	$request->setDocumentation("DocumentationTest");
	$request->setOptions("OptionsTest");
	$request->setMark($mark);
	$request->setDocuments($documents);
	echo "start validate\n";
	$validateOrder = new  ascio\ValidateOrder($request);
	try {
		$response = $ascioClient->ValidateOrder($validateOrder);
	} catch (\Exception $e) {
		echo ("[".$e->faultcode . "] ". $e->faultstring);
		return;
	}
	echo "end validate\n";
	
	if ($response->getValidateOrderResult()->getResultCode() == 200) {
		echo "Validation: OK\r\n";
		try {
			$createOrderResponse = $ascioClient->CreateOrder(new ascio\CreateOrder($request));
		} catch (\Exception $e) {
			echo ("[".$e->faultcode . "] ". $e->faultstring);
			return;
		}
		echo "Create Order: ".$createOrderResponse->CreateOrderResult->getResultCode() . " " . $createOrderResponse->CreateOrderResult->getResultMessage() . "\r\n";
		if ($createOrderResponse->CreateOrderResult->getResultCode() == 200) {
			echo "OrderId : " . $createOrderResponse->CreateOrderResult->getOrderInfo()->getOrderId() . "\r\n";
			echo "Order Status : " . $createOrderResponse->CreateOrderResult->getOrderInfo()->getStatus() . "\r\n";
		} else {
			echo ($response->CreateOrderResult->getResultMessage()."\n");
			foreach($createOrderResponse->CreateOrderResult->getErrors() as $error) {
				echo $error."\n";
				return $response;
			}
		}
		return $createOrderResponse;
	} else {
		echo ($response->getValidateOrderResult()->getResultMessage()."\n");
		if ($response->getValidateOrderResult()->getErrors()) {
			foreach($response->getValidateOrderResult()->getErrors()->getString() as $error) {
				 echo $error."\n";
			}
		}
		return $response;
	}
}
createOrderExample();
WSDL for AWS v3
https://aws.demo.ascio.com/v3/aws.wsdl (OTE)
https://aws.ascio.com/v3/aws.wsdl (Live)
Please configure the IP-Whitelisting in the portal/demo-portal.