Crowd Branding API

1.1 Overview

The Crowd Document API enables Crowd owners with external systems to make requests from a third-party application to SAP Field Service Management, where they can manage their Crowd platform branding.

For more information on the SAP Field Service Management Crowd platform, please refer to the following documentation:

Crowd


1.1.1 Supported Requests

The following requests are supported by the Crowd Branding API:

  Method Description Section
1.1.0.1 GET Retrieve existing branding settings. 1.3
1.1.0.2 GET Retrieve existing branding setting using key . 1.4
1.1.0.3 GET Retrieve list of supported data types that support values. 1.5

1.1.2 Crowd Document API in Swagger

The Swagger specification for the Crowd partner API can be accessed here.


1.2 Access

The Crowd Branding API uses Oauth 2.0 for authentication. This token is then used in the Authorization header as the bearer.

Attention: In order to receive an access token, you must have ADMINISTRATOR or SUPERUSER privileges.

1.2.1 Get Access Token

The following example shows how to get the access token for a Cloud Account or a Company User:


Cloud Account


The following example is an example of authentication for a SAP Cloud account with access to all companies within the account:


POST https://auth.coresuite.com/api/oauth2/v1/token HTTP/1.1

Host et.dev.coresuite.com
Authorization Basic dGVzdDpzZWNyZXQ=
Content-Type application/x-www-form-urlencoded

grant_type=password&username=cym&password=passwordExample123


Company User


The following example of authentication for a company user, with access to companies controlled by existing subscription and permission settings:


POST https://auth.coresuite.com/api/oauth2/v1/token HTTP/1.1

Host et.dev.coresuite.com
Authorization Basic dGVzdDpzZWNyZXQ=
Content-Type application/x-www-form-urlencoded

grant_type=password&username=cym/manager&password=passwordExample123


1.2.2 Response

The following is an example of a typical response:

{
  "access_token": "77cf4834-a347-4849-839b-4518823a739e",
  "token_type": "bearer",
  "expires_in": 43199,
  "scope": "general",
  "cluster_url": "https://et.dev.coresuite.com",
  "account": "testaccount",
  "account_id" : 284,
  "user": "manager",
  "user_email": "test@coresuite.ch",
  "companies": [
    {
      "id": 957,
      "name": "SBODemoCH",
      "description": "OEC Computers (Schweiz)"
    }
  ],
 }
 

1.2.3 Error Response

{
  "error": "invalid_grant",
  "error_description": "Bad credentials"
}

1.2.4 Supported Clusters

Depending on the location of the account, requests will be made to one of the following server clusters:

  • EU
  • DE
  • US
  • CN
  • AU

Account information, including cluster assignment, are obtained from the Directory API.

This information is passed into requests made to the Crowd Branding API as follows:

https://{cluster}.coresuite.net/api/branding/v1/


1.3 GET Existing Branding Settings

Retrieve existing branding settings.

1.3.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/branding/v1/settings

1.3.2 Headers

Header Parameter Value Description Required
Authorization bearer OAuth 2.0 token Required
X-Account-ID accountId The account identifier Required
X-Account-Name accountName The name of the account Required
X-Client-ID clientId Client app identifier Required
X-Client-Version clientVersion The client version Required
X-Company-Id companyId The company identfier Required
X-Company-Name companyName The name of the company Required
Accept application/json;charset=UTF-8   Required
content-type application/json   Required

1.3.3 Response

The following values are displayed in the request response:

Value Description Type
key The key associated with the branding setting. String
type Data type of branding setting value. Types include: Number, String, Boolean, Color, HTML, Cloud_identifier, Email, Phone, URL String
value The value associated with the branding setting key. String

1.3.4 Example Response

{
  "results": [
    {
      "key": "Coresystems.CoresystemsFSM.Crowd.Contact",
      "type": "HTML",
      "value": "contact@email.com"
    }
  ]
}

1.3.5 Response Codes

Status Response
200 Lookup of branding settings operation succeeded
401 Unauthorized
403 Forbidden
404 Not Found

1.4 GET Existing Branding Setting by Key

Retrieve details of an existing branding setting using key.

1.4.1 Request

Method URL
GET https://{cluster}.coresuite.net/api/branding/v1/settings/{key}

1.4.2 Headers

Header Parameter Value Description Required
Authorization bearer OAuth 2.0 token Required
X-Account-ID accountId The account identifier Required
X-Account-Name accountName The name of the account Required
X-Client-ID clientId Client app identifier Required
X-Client-Version clientVersion The client version Required
X-Company-Id companyId The company identfier Required
X-Company-Name companyName The name of the company Required
Accept application/json;charset=UTF-8   Required
content-type application/json   Required

1.4.3 URL Parameters

Parameter Description Type Required
{key} The key associated with the branding setting you wish to retrieve. String Required

1.4.4 Response

The following values are returned by this request:

Value Description Type
key The key associated with the branding setting. String
type Data type of branding setting value. Types include: Number, String, Boolean, Color, HTML, Cloud_identifier, Email, Phone, URL String
value The value associated with the branding setting key. String

1.4.5 Example Response

{
  "key": "Coresystems.CoresystemsFSM.Crowd.Contact",
  "type": "HTML",
  "value": "contact@email.com"
}

1.4.6 Response

Status Response
200 Branding setting found
401 Unauthorized
403 Forbidden
404 Branding setting with requested key not found

1.5 GET List of All Supported Branding Setting Types

Get list of all supported data types that can be used with values.

1.5.1 Request

Method URL
GET https://{cluster}.coresuite.net/api/branding/v1/settings/types

1.5.2 Headers

Header Parameter Value Description Required
Authorization bearer OAuth 2.0 token Required
X-Account-ID accountId The account identifier Required
X-Account-Name accountName The name of the account Required
X-Client-ID clientId Client app identifier Required
X-Client-Version clientVersion The client version Required
X-Company-Id companyId The company identfier Required
X-Company-Name companyName The name of the company Required
Accept application/json;charset=UTF-8   Required
content-type application/json   Required

1.5.3 Example Response

[
  "NUMBER"
]

1.5.4 Response Codes

Status Response
200 OK
401 Unauthorized
403 Forbidden
404 Not Found