Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Generic SOAP server for SilverStripe Framework

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 _config
Octocat-spinner-32 code
Octocat-spinner-32 tests
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.md
Octocat-spinner-32 _config.php
README.md

SilverStripe RestfulServer Module

Overview

SOAP server class which auto-generates a WSDL file to initialize PHPs integrated SoapServer functionality. Extended by SOAPModelAccess to scaffold WSDL for a specific class.

This module is just a wrapper for the "restfulserver" module, internally all SOAP calls are rewritten as RESTful calls

Requirements

Configuration

Example DataObject with simple api access, giving full access to all object properties and relations, unless explicitly controlled through model permissions.

class Article extends DataObject {
    static $db = array('Title'=>'Text','Published'=>'Boolean');
    static $api_access = true;
}

Usage

Getting a record:

$c = new SoapClient('http://mysite.com/soap/v1/wsdl');
echo $c->getXML("MyClassName", 99); // gets record #99 as xml

Updating a record:

$c = new SoapClient('http://mysite.com/soap/v1/wsdl');
$data = array('MyProperty' => 'MyUpdatedValue');
echo $c->putXML("MyClassName", 99, null, $data);

Creating a record:

$c = new SoapClient('http://mysite.com/soap/v1/wsdl');
$data = array('MyProperty' => 'MyValue');
echo $c->putXML("MyClassName", null, null, $data);

Creating a record:

$c = new SoapClient('http://mysite.com/soap/v1/wsdl');
echo $c->deleteXML("MyClassName");
Something went wrong with that request. Please try again.