This overview of the Simple Content Storage Protocol (SCSP) methods explains how they map to the corresponding HTTP methods.

SCSP as a Subset of HTTP

The mechanism that applications use to communicate with Swarm is a text-based protocol based on HTTP. Known as the Simple Content Storage Protocol (SCSP), the methods and syntax are a proper subset of the HTTP/1.1 standard.

Although many of the optional parts of HTTP/1.1 are not implemented in SCSP (which is why the protocol is referred to as simple), all required protocol components are implemented, as well as several of the common methods.

Swarm assumes communication with an HTTP/1.1 compliant client application.

See https://perifery.atlassian.net/wiki/spaces/public/pages/2443811229/Working+with+Large+Objects?search_id=f1561087-b409-44d5-a6fc-f0765f37d8a2.

See the /wiki/spaces/DOCS/pages/2443822872 for the API-level implementation of SCSP. The SDK helps developers write integrations to Swarm. The SDK includes sample code in Java, Python, C++, and C#.

Mapping SCSP to HTTP Methods

The following table maps SCSP methods to complementary HTTP methods.

SCSP Method

HTTP Method

RFC 7231 Section

READ

GET

4.3.1

INFO

HEAD

4.3.2

WRITE

POST

4.3.3

UPDATE

PUT

4.3.4

DELETE

DELETE

4.3.5

n/a

CONNECT

4.3.6

n/a

OPTIONS

4.3.7

n/a

TRACE

4.3.8

APPEND



COPY



SCSP Protocol

Most HTTP communication is initiated by a client application and consists of a request to be applied to an object on a Swarm server. This is performed using a single connection between the client application and the Swarm server. Being HTTP-based, SCSP protocol consists of HTTP requests and responses:

See the HTTP/1.1 specification for the semantics and nuances of HTTP.