Service

This page contains an example implementation for a REST endpoint of a Service Provider, using the token obtained from the iSHARE /token endpoint and the delegation evidence obtained from the /delegation endpoint.

Delegation path example

In certain use cases, it could be relevant to provide information about a delegation path. A delegation path is the delegation of a delegation from one delegated party to another party. The iSHARE Framework does not specify how a delegation path should be provided to a Service Provider. More information about delegation paths is included in the iSHARE Knowledge Base.

An example of how a delegation path could be provided to the Service Provider is by using a header that contains party identifiers of the parties involved in the path. These identifiers can be used to obtain or evaluate a chain of delegation evidence.

Delegation-Path: [party-id-entitled-party, party-id-data-consumer, party-id-delegated-consumer, etc.]

Example endpoint for Service Provider (parameters apply to other HTTP methods as well)

get

This is an example service (business specific) endpoint to show how any Service Provider that adheres to iSHARE MUST apply iSHARE conformant OAuth to every iSHARE enabled service. Request can make use of any HTTP method and can contain any extra headers. For convenience this documentation only defines the GET method. Parameters are undefined because they vary for each Service Provider due to their business specific logic. Note: Additional headers for security, statefulnes, application functionality could be added and is out of scope of this specification.

Authorizations
AuthorizationstringRequired

OAuth 2.0 authorization based on bearer token. MUST contain “Bearer “ + access token value. Must be provided if restricted endpoints are needed.

Header parameters
delegationEvidencestringOptional

iSHARE delegation evidence regarding the requested service. The Service Consumer can obtain this evidence from an Authorization Registry / Entitled Party before requesting a specific service.

serviceConsumerAssertionstringOptional

iSHARE specific optional client assertion. Used when a Service Consumer is requesting a service on behalf of another Service Consumer in a 'service broker' pattern. It is used to prove that the 'brokering' Service Consumer indeed has had a request from the original Service Consumer

LicensePurposestringOptional

Optional iSHARE specific value describing the purpose of the license the Service Consuming Entity requests for the data in the service response

Service-HeadersstringOptional

Any service specific headers

Responses
200

OK

application/json
get
/service
200

OK

Last updated