@@ -124,7 +124,8 @@ related concepts from OAuth [RFC6749] and elsewhere:
124124 Resource through an API (e.g., WebDAV [RFC4918]) of the sending
125125 server.
126126* __Sending Gesture__ - A user interface interaction from the Sending
127- Party to the Sending Server, conveying the intention to create a Share.
127+ Party to the Sending Server, conveying the intention to create a
128+ Share.
128129* __Share Creation__ - The addition of a Share to the database state of
129130 the Sending Server, in response to a successful Sending Gesture or for
130131 another reason.
@@ -143,9 +144,9 @@ related concepts from OAuth [RFC6749] and elsewhere:
143144 identify a user or group "at" an OCM Server and MAY be referred to as
144145 Federated Cloud ID.
145146 ` <Receiving Party's identifier>` is an opaque string, unique at the
146- server. `<fqdn>` is the Fully Qualified Domain Name by which the server
147- is identified. This MUST be the domain at which the `/.well-known/ocm`
148- endpoint of that server is hosted.
147+ server. `<fqdn>` is the Fully Qualified Domain Name by which the
148+ server is identified. This MUST be the domain at which the
149+ ` /.well-known/ocm ` endpoint of that server is hosted.
149150* __OCM Notification__ - A message from the Receiving Server to the
150151 Sending Server or vice versa, using the OCM Notifications endpoint.
151152* __Invite Message__ - Out-of-band message used to establish contact
@@ -165,17 +166,18 @@ related concepts from OAuth [RFC6749] and elsewhere:
165166 generated by the Invite Sender OCM Server and linked uniquely to the
166167 Invite Sender's OCM Address.
167168* __Invite Creation Gesture__ - Gesture from the Invite Sender to the
168- Invite Sender OCM Server, resulting in the creation of an Invite Token.
169+ Invite Sender OCM Server, resulting in the creation of an Invite
170+ Token.
169171* __Invite Acceptance Gesture__ - Gesture from the Invite Receiver to
170172 the Invite Receiver OCM Server, supplying the Invite Token as well as
171173 the OCM Address of the Invite Sender, effectively allowlisting the
172174 Invite Sender OCM Server for sending Share Creation Notifications to
173175 the Invite Receiver OCM Server.
174176* __Invite Acceptance Request__ - API call from the Invite Receiver OCM
175177 Server to the Invite Sender OCM Server, supplying the Invite Token as
176- well as the OCM Address of the Invite Receiver, effectively allowlisting
177- the Invite Sender OCM Server for sending Share Creation Notifications to
178- the Invite Receiver OCM Server.
178+ well as the OCM Address of the Invite Receiver, effectively
179+ allowlisting the Invite Sender OCM Server for sending Share Creation
180+ Notifications to the Invite Receiver OCM Server.
179181* __Invite Acceptance Response__ - HTTP response to the Invite
180182 Acceptance Request.
181183* __Share Name__ - A human-readable string, provided by the Sending
@@ -347,8 +349,8 @@ The Invite Acceptance Response SHOULD be a HTTP response:
347349 - REQUIRED : ` userID` - the Invite Sender's identifier at their OCM
348350 Server
349351 - REQUIRED : ` email` - non-normative / informational; an email address
350- for the Invite Sender. Not necessarily at the same FQDN as their OCM
351- Server
352+ for the Invite Sender. Not necessarily at the same FQDN as their
353+ OCM Server
352354 - REQUIRED : ` name` - human-readable name of the Invite Sender, as a
353355 suggestion for display in the Invite Receiver's address book
354356
@@ -511,8 +513,8 @@ contain the following information about its OCM API:
511513 endpoint. Example : ` "MyCloudStorage"`
512514* REQUIRED: resourceTypes (array) - A list of all resource types this
513515 server supports in both the Sending Server role and the Receiving
514- Server role, with their access protocols. Each item in this list SHOULD
515- itself be an object containing the following fields :
516+ Server role, with their access protocols. Each item in this list
517+ SHOULD itself be an object containing the following fields :
516518 - name (string) - A supported resource type (file, calendar,
517519 contact, ...).
518520 Implementations MUST offer support for at least one
@@ -618,7 +620,8 @@ contain the following information about its OCM API:
618620 enhance the UX of the Invite Flow. If for example
619621 ` "/index.php/apps/sciencemesh/accept"` is specified here then a WAYF
620622 Page SHOULD redirect the end-user to
621- ` /index.php/apps/sciencemesh/accept?token=zi5kooKu3ivohr9a&providerDomain=example.com` .
623+ ` /index.php/apps/sciencemesh/accept?token=zi5kooKu3ivohr9a&providerDomain=example.com`
624+ .
622625
623626# Share Creation Notification
624627
@@ -740,8 +743,8 @@ servers MAY only support `webdav`.
740743 Resource.
741744 - OPTIONAL requirements (array of strings) -
742745 The requirements that the sharee MUST fulfill to
743- access the Resource. A subset of : - `mfa-enforced` requires the consumer to be
744- MFA-authenticated. This MAY be used if the
746+ access the Resource. A subset of : - `mfa-enforced` requires the
747+ consumer to be MFA-authenticated. This MAY be used if the
745748 recipient provider exposes the `enforce-mfa`
746749 capability. - `use-code` requires the consumer to exchange
747750 the given `code` via a signed HTTPS request. This
@@ -756,10 +759,10 @@ servers MAY only support `webdav`.
756759 the `/.well-known/ocm` endpoint MUST be used.
757760 Absolute URIs are deprecated.
758761 - REQUIRED viewMode (string)
759- The permissions granted to the sharee. A subset of : - `view` allows access to the web app in view-only
760- mode. - `read` allows read and download access via the
761- web app. - `write` allows full editing rights via the web
762- app.
762+ The permissions granted to the sharee. A subset of : - `view`
763+ allows access to the web app in view-only mode. - `read` allows
764+ read and download access via the web app. - `write` allows full
765+ editing rights via the web app.
763766 - OPTIONAL sharedSecret (string)
764767 An optional secret to be used to access the remote
765768 web app, for example in the form of a bearer token.
@@ -880,16 +883,17 @@ is as follows:
8808831. The receiver MUST extract the OCM Server FQDN from the `sender`
881884 field of the received share, and MUST query the
882885 [Discovery](#ocm-api-discovery) endpoint at that address: the
883- ` resourceTypes[0].protocols.webdav` value is the `<sender-ocm-path>` to
884- be used in step 3.
886+ ` resourceTypes[0].protocols.webdav` value is the
887+ ` <sender-ocm-path> ` to be used in step 3.
8858882. If `code` is not empty, the receiver SHOULD make a signed POST
886889 request to the `/token` path inside the Sending Server's OCM API, to
887890 exchange the code for a short-lived bearer token, and then use that
888891 bearer token to access the Resource.
8898923. If `protocol.name` = `webdav`, the receiver SHOULD inspect the
890893 ` protocol.options` property. If it contains a `sharedSecret`, as in
891- the [legacy
892- example](https://cs3org.github.io/OCM-API/docs.html?branch=develop&repo=OCM-API&user=cs3org#/paths/~1shares/post),
894+ the [legacy example](
895+ https://cs3org.github.io/OCM-API/docs.html?branch=develop&repo=OCM-API&user=cs3org#/paths/~1shares/post
896+ ),
893897 then the receiver SHOULD make a HTTP PROPFIND request to
894898 ` https://<sharedSecret>:@<sender-host><sender-ocm-path>` . Note that
895899 this access method, based on Basic Auth, is _deprecated_ and may be
@@ -899,11 +903,11 @@ is as follows:
899903 receiver MUST make a HTTP PROPFIND request against it to access the
900904 Remote Resource. If it only contains an identifier `<key>`, the
901905 receiver MUST make a HTTP PROPFIND request to
902- ` https://<sender-host><sender-ocm-path>/<key>` in order to access the
903- Remote Resource. Additionally, the receiver MUST pass an
904- `Authorization : bearer` header with either the short-lived bearer token
905- obtained in step 2, if applicable, or the `protocol.webdav.sharedSecret`
906- value.
906+ ` https://<sender-host><sender-ocm-path>/<key>` in order to access
907+ the Remote Resource. Additionally, the receiver MUST pass an
908+ `Authorization : bearer` header with either the short-lived bearer
909+ token obtained in step 2, if applicable, or the
910+ ` protocol.webdav.sharedSecret ` value.
907911
908912In all cases, in case the Shared Resource is a folder and the Receiving
909913Server accesses a Resource within that shared folder, it SHOULD append
@@ -985,14 +989,16 @@ Implementers SHOULD NOT use it and prefer short-lived tokens instead.
985989
986990# # Normative References
987991
988- [RFC2119] Bradner, S. "[Key words for use in RFCs to Indicate Requirement
989- Levels](https://datatracker.ietf.org/doc/html/rfc2119)", March 1997.
992+ [RFC2119] Bradner, S. "[Key words for use in RFCs to Indicate
993+ Requirement Levels](https://datatracker.ietf.org/doc/html/rfc2119)",
994+ March 1997.
990995
991- [RFC4918] Dusseault, L. M. "[HTTP Extensions for Web Distributed Authoring
992- and Versioning](https://datatracker.ietf.org/html/rfc4918/)", June 2007.
996+ [RFC4918] Dusseault, L. M. "[HTTP Extensions for Web Distributed
997+ Authoring and Versioning](https://datatracker.ietf.org/html/rfc4918/)",
998+ June 2007.
993999
994- [RFC8174] Leiba, B. "[Ambiguity of Uppercase vs Lowercase in RFC 2119 Key
995- Words](https://datatracker.ietf.org/html/rfc8174)", May 2017.
1000+ [RFC8174] Leiba, B. "[Ambiguity of Uppercase vs Lowercase in RFC 2119
1001+ Key Words](https://datatracker.ietf.org/html/rfc8174)", May 2017.
9961002
9971003[RFC9421] Backman, A., Richer, J. and Sporny, M. "[HTTP Message
9981004Signatures](https://tools.ietf.org/html/rfc9421)", February 2024.
@@ -1073,8 +1079,8 @@ Here is an example of headers needed to sign a request.
10731079 signature
10741080 - ' signature' the signature of an array containing the properties
10751081 listed in 'headers'. Some properties like content-length, date,
1076- content-digest, and host are mandatory to protect against authenticity
1077- override.
1082+ content-digest, and host are mandatory to protect against
1083+ authenticity override.
10781084
10791085# # How to generate the Signature for outgoing request
10801086
0 commit comments