Crowd Technician API

1.1 Overview

The Crowd Technician API enables crowd owner with external systems to make requests from a third-party application to SAP Field Service Management, where they can create and manage the Crowd technicians who accept assignments and complete work as part of the SAP Field Service Management Crowd platform.

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

Crowd


1.1.1 Request Methods

The following methods are supported by the Crowd Technician API:

  Method Description Section
Crowd Technician      
1.1.0.1 POST Create a new crowd techician. 1.3
1.1.0.2 PUT Update an existing Crowd technician. 1.4
1.1.0.3 GET Retrieve information on a specific Crowd technician. 1.5
1.1.0.4 GET Retrieve information on all Crowd techicians. 1.6
1.1.0.5 DELETE Delete an existing Crowd technician record. 1.7
Address      
1.1.0.6 POST Create a new address record for an existing technician. 1.8
1.1.0.7 GET Retrieve an address for a technician. 1.9
1.1.0.8 PUT Update a Crowd technician address. 1.10
1.1.0.9 DELETE Delete a Crowd technician address. 1.11
1.1.0.10 POST Process batch operation on addresses. 1.12
Skills      
1.1.0.11 GET Retrieve skills for a specified Crowd technician. 1.13
1.1.0.12 POST Create skill for a specified Crowd technician. 1.14
1.1.0.13 GET Retrieve skill by ID for specified Crowd technician. 1.15
1.1.0.14 PUT Update skill by ID for specified Crowd techician. 1.16
1.1.0.15 DELETE Delete skill by ID for specified Crowd technician. 1.17
1.1.0.16 PUT Upload certificate for skill assignment for specified Crowd technician. 1.18
1.1.0.17 GET Download skill assignment certificate for specified Crowd technician skill. 1.19
1.1.0.18 POST Approve Crowd technician skill assignment by ID. 1.20
1.1.0.19 POST Reject Crowd technician skill assignment by ID. 1.21
1.1.0.20 POST Process batch operation on skills. 1.22

1.1.2 Crowd Business Partner API in Swagger

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


1.2 Access

The Crowd Technician 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 FSM 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@coresystems.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

Attention: please note that the CN (China) cluster is currently NOT supported.

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

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

https://{cluster}.coresuite.com/cloud-crowd-service/api/crowd/v2/technicians/


1.3 Create New Crowd Technician

Create a new Crowd technician record.

1.3.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians

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 Request Body

The following values are supported when creating a new Crowd technician record via POST request:

Value     Description Type Required
address     The address of the Crowd technician.    
  city   The city associated with the Crowd technician address. String  
  country   The country associated with the Crowd technician address. String  
  id   The unique ID associated with the address record. This ID can be used to perform DELETE and PUT requests. String  
  number   The street number associated with the Crowd technician address. String  
  streetName   The name of the street associated with the Crowd technician address. String  
  zipCode   The zip code associated with the Crowd technician address. String  
businessPartner     The business partner associated with the Crowd technician. String Required
createdAt     The date/time at which the Crowd technician record was created. dateTime  
email     The email address of the crowd technician. String Required
externalId     The externalidentifier of the Crowd technician. This value is automatically generated by the cloud and used in other Crowd technician requests. String  
firstName     The first name of the Crowd technician. String Required
lastName     The last name of the Crowd technician. String Required
mobilePhone     The mobile phone number of the crowd technician. String  
serviceArea     The service area information of the Crowd technician.    
  googlePlaceId   The google place ID associated with the service area center point. String  
  id   The identifier associated with the service area record. String  
  latitude   The latitude of the service area center point. Integer  
  longitude   The longitude of the service area center point Integer  
  radius   The service area readius.    
    unit The unit of measure associated with the service area radius (example: km; mi). String  
    value The value associated with the service area radius (example: 10). Integer  
skills       Array  
  approvalDecision   The current approval decision status of the Crowd technician skill assignment. String  
    approvalStatus The current apprval status of the Crowd technician skill assignment. Options include: PENDING, REVIEW, APPROVED, DECLINED, APPROVED_CLOSED, DECLINED_CLOSED, CANCELLED, APPROVAL_NOT_REQUIRED String  
    reason If applicable the reason or comment associated with the Crowd technician skill assignment decision status. String  
  certificate     Array  
    externalId External identifier of the certificate (id of Attachment) String  
    fileName Name of the certificate file. String  
    id Identifier of the certificate.    
  expiredAt   If applicable, the date at which the skill expires. date  
  starteddAt   If applicable, the date at which the skill validity begins. date  
  status   The current status of the skill. String  
  tagExternalID   Reference to the tag in cloud. String  
  tagName   The name of the skill/requirement/tag (example: “English Proficiency”) String  
  technicianExternalId   Reference to the technician in the cloud. String  
  uuid   The unique identifier associated with the skill. . String Automatically generated by cloud and displayed in response.

1.3.4 Example Request Body

The following is an example of a new Crowd technician created via POST request:

{
  "address": {
    "city": "Munich",
    "country": "Germany",
    "id": "59052728e6434a598d1ff9965637ec1e",
    "number": 15,
    "streetName": "Rosenheimer Strasse",
    "zipCode": 81667
  },
  "businessPartner": "59052728e6434a598d1ff9965637ec1e",
  "createdAt": "2019-12-18T14:30:30Z",
  "email": "john.smith@coresystems-partner.com",
  "externalId": "59052728e6434a598d1ff9965637ec1e",
  "firstName": "John",
  "lastName": "Smith",
  "mobilePhone": "+1234567890",
  "serviceArea": {
    "googlePlaceId": "ChIJrTLr-GyuEmsRBfy61i59si0",
    "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
    "latitude": 48.137154,
    "longitude": 11.576124,
    "radius": {
      "unit": "mi",
      "value": 15.5
    }
  },
  "skills": [
    {
      "approvalDecision": {},
      "certificate": {},
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ]
}

1.3.5 Example Response

{
  "results": [
    {
      "address": {
        "city": "Munich",
        "country": "Germany",
        "id": "59052728e6434a598d1ff9965637ec1e",
        "number": 15,
        "streetName": "Rosenheimer Strasse",
        "zipCode": 81667
      },
      "businessPartner": "59052728e6434a598d1ff9965637ec1e",
      "createdAt": "2019-12-18T14:30:30Z",
      "email": "john.smith@coresystems-partner.com",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "firstName": "John",
      "lastName": "Smith",
      "mobilePhone": "+1234567890",
      "serviceArea": {
        "googlePlaceId": "ChIJrTLr-GyuEmsRBfy61i59si0",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
        "latitude": 48.137154,
        "longitude": 11.576124,
        "radius": {
          "unit": "mi",
          "value": 15.5
        }
      },
      "skills": [
        {
          "approvalDecision": {
            "approvalStatus": "APPROVED",
            "reason": "Fully agree with that"
          },
          "certificate": {
            "externalId": "59052728e6434a598d1ff9965637ec1e",
            "fileName": "English_Advanced_Level_cert.pdf",
            "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
          },
          "expiredAt": "2019-12-31",
          "externalId": "59052728e6434a598d1ff9965637ec1e",
          "startedAt": "2019-01-01",
          "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
          "tagName": "English",
          "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
          "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
        }
      ]
    }
  ]
}

1.3.6 Response Codes

Status Response
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.4 Update Crowd Technician

Update an existing crowd technician record.

1.4.1 Request

Method URL
PUT https://{cluster}.coresuite.com/api/crowd/v2/technicians/external-id/{external-id}}

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

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician record you wish to update. Required

1.4.4 Request Body

The following values are supported when updating a Crowd technician record via PUT request:

Value     Description Type Required
address     The address of the Crowd technician.    
  city   The city associated with the Crowd technician address. String  
  country   The country associated with the Crowd technician address. String  
  id   The unique ID associated with the address record. This ID can be used to perform DELETE and PUT requests. String  
  number   The street number associated with the Crowd technician address. String  
  streetName   The name of the street associated with the Crowd technician address. String  
  zipCode   The zip code associated with the Crowd technician address. String  
businessPartner     The business partner associated with the Crowd technician. String  
createdAt     The date/time at which the Crowd technician record was created. dateTime  
email     The email address of the crowd technician. String Required
externalId     The externalidentifier of the Crowd technician. This value is automatically generated by the cloud and used in other Crowd technician requests. String  
firstName     The first name of the Crowd technician. String Required
lastName     The last name of the Crowd technician. String Required
mobilePhone     The mobile phone number of the crowd technician. String Required
serviceArea     The service area information of the Crowd technician.    
  googlePlaceId   The google place ID associated with the service area center point. String  
  id   The identifier associated with the service area record. String  
  latitude   The latitude of the service area center point. Integer  
  longitude   The longitude of the service area center point Integer  
  radius   The service area readius.    
    unit The unit of measure associated with the service area radius (example: km; mi). String  
    value The value associated with the service area radius (example: 10). Integer  
skills       Array  
  approvalDecision   The current approval decision status of the Crowd technician skill assignment. String  
    approvalStatus The current apprval status of the Crowd technician skill assignment. Options include: PENDING, REVIEW, APPROVED, DECLINED, APPROVED_CLOSED, DECLINED_CLOSED, CANCELLED, APPROVAL_NOT_REQUIRED String  
    reason If applicable the reason or comment associated with the Crowd technician skill assignment decision status. String  
  certificate     Array  
    externalId External identifier of the certificate (id of Attachment) String  
    fileName Name of the certificate file. String  
    id Identifier of the certificate.    
  expiredAt   If applicable, the date at which the skill expires. date  
  starteddAt   If applicable, the date at which the skill validity begins. date  
  status   The current status of the skill. String  
  tagExternalID   Reference to the tag in cloud. String  
  tagName   The name of the skill/requirement/tag (example: “English Proficiency”) String  
  technicianExternalId   Reference to the technician in the cloud. String  
  uuid   The unique identifier associated with the skill. . String Automatically generated by cloud and displayed in response.

1.4.4 Example Request Body

The following is an example request body of an updated technician record made via PUT request:

{
  "address": {
    "city": "Munich",
    "country": "Germany",
    "id": "59052728e6434a598d1ff9965637ec1e",
    "number": 15,
    "streetName": "Rosenheimer Strasse",
    "zipCode": 81667
  },
  "businessPartner": "59052728e6434a598d1ff9965637ec1e",
  "createdAt": "2019-12-18T14:30:30Z",
  "email": "john.smith@coresystems-partner.com",
  "externalId": "59052728e6434a598d1ff9965637ec1e",
  "firstName": "John",
  "lastName": "Smith",
  "mobilePhone": "+1234567890",
  "serviceArea": {
    "googlePlaceId": "ChIJrTLr-GyuEmsRBfy61i59si0",
    "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
    "latitude": 48.137154,
    "longitude": 11.576124,
    "radius": {
      "unit": "mi",
      "value": 15.5
    }
  },
  "skills": [
    {
      "approvalDecision": {},
      "certificate": {},
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ]
}

1.4.5 Example Response

{
  "results": [
    {
      "address": {
        "city": "Munich",
        "country": "Germany",
        "id": "59052728e6434a598d1ff9965637ec1e",
        "number": 15,
        "streetName": "Rosenheimer Strasse",
        "zipCode": 81667
      },
      "businessPartner": "59052728e6434a598d1ff9965637ec1e",
      "createdAt": "2019-12-18T14:30:30Z",
      "email": "john.smith@coresystems-partner.com",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "firstName": "John",
      "lastName": "Smith",
      "mobilePhone": "+1234567890",
      "serviceArea": {
        "googlePlaceId": "ChIJrTLr-GyuEmsRBfy61i59si0",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
        "latitude": 48.137154,
        "longitude": 11.576124,
        "radius": {
          "unit": "mi",
          "value": 15.5
        }
      },
      "skills": [
        {
          "approvalDecision": {
            "approvalStatus": "APPROVED",
            "reason": "Fully agree with that"
          },
          "certificate": {
            "externalId": "59052728e6434a598d1ff9965637ec1e",
            "fileName": "English_Advanced_Level_cert.pdf",
            "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
          },
          "expiredAt": "2019-12-31",
          "externalId": "59052728e6434a598d1ff9965637ec1e",
          "startedAt": "2019-01-01",
          "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
          "tagName": "English",
          "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
          "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
        }
      ]
    }
  ]
}

1.4.6 Response Codes

Status Response
200 OK
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.5 GET Information on a Specific Crowd Technician

Retrieve information for a specific Crowd technician.

1.5.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians/external-id/{external-id}

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 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician record you wish to retrieve. Required

1.5.4 Example Response

{
  "results": [
    {
      "address": {
        "city": "Munich",
        "country": "Germany",
        "id": "59052728e6434a598d1ff9965637ec1e",
        "number": 15,
        "streetName": "Rosenheimer Strasse",
        "zipCode": 81667
      },
      "businessPartner": "59052728e6434a598d1ff9965637ec1e",
      "createdAt": "2019-12-18T14:30:30Z",
      "email": "john.smith@coresystems-partner.com",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "firstName": "John",
      "lastName": "Smith",
      "mobilePhone": "+1234567890",
      "serviceArea": {
        "googlePlaceId": "ChIJrTLr-GyuEmsRBfy61i59si0",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
        "latitude": 48.137154,
        "longitude": 11.576124,
        "radius": {
          "unit": "mi",
          "value": 15.5
        }
      },
      "skills": [
        {
          "approvalDecision": {
            "approvalStatus": "APPROVED",
            "reason": "Fully agree with that"
          },
          "certificate": {
            "externalId": "59052728e6434a598d1ff9965637ec1e",
            "fileName": "English_Advanced_Level_cert.pdf",
            "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
          },
          "expiredAt": "2019-12-31",
          "externalId": "59052728e6434a598d1ff9965637ec1e",
          "startedAt": "2019-01-01",
          "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
          "tagName": "English",
          "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
          "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
        }
      ]
    }
  ]
}

1.5.5 Response Codes

Status Response
200 OK
401 Unauthorized
403 Forbidden
404 Not Found

1.6 GET Information on All Crowd Technicians

Retrieve information on all Crowd technicians associated with the tenant.

1.6.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians

1.6.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.6.3 URL Parameters

Parameter Type Description
Page Integer The amount of results per page you wish to return.
Size Integer The number of records per page you wish to return .
{skillName} String The name of the skill assigned to Crowd technician records you wish to return.
{skllValidityDate} Date The expiration date of the skill assignment (example: 2019-12-31)

1.6.4 Response Example

  "first": true,
  "last": true,
  "number": 0,
  "numberOfElements": 0,
  "results": [
    {
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "firstName": "John",
      "lastChanged": "2019-12-01T08:53:05.384",
      "lastName": "Smith"
    }
  ],
  "size": 0,
  "totalElements": 0,
  "totalPages": 0
}

1.6.5 Response

Status Response
200 Technicians found successfully and available for read
400 You are not allowed to perform this operation
401 Unauthorized
403 Forbidden
404 Not Found

1.7 Delete Crowd Technician

Delete an existing Crowd technician record.

1.7.1 Request

Method URL
DELETE https://{cluster}.coresuite.com/api/crowd/v2/technicians/external-id/{external-id}

1.7.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.7.3 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician record you wish to delete. Required

1.7.4 Response Codes

Status Response
204 No Content
401 Unauthorized
403 Forbidden

1.8 Create Address for Existing Crowd Technician

1.8.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/addresses

1.8.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.8.3 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician for which you wish to create and address. Required

1.8.4 Request Body

The following values are supported in a POST request to create a new address for an existing Crowd technician:

Value Description Type Required
city The city associated with the Crowd technician address. String  
country The country associated with the Crowd technician address. String  
id The unique ID associated with the address record. This ID can be used to perform DELETE and PUT requests. String  
number The street number associated with the Crowd technician address. String  
streetName The name of the street associated with the Crowd technician address. String  

1.8.5 Example Request Body

{
  "city": "Munich",
  "country": "Germany",
  "id": "59052728e6434a598d1ff9965637ec1e",
  "number": 15,
  "streetName": "Rosenheimer Strasse",
  "zipCode": 81667
}

1.8.6 Example Response

{
  "results": [
    {
      "city": "Munich",
      "country": "Germany",
      "id": "59052728e6434a598d1ff9965637ec1e",
      "number": 15,
      "streetName": "Rosenheimer Strasse",
      "zipCode": 81667
    }
  ]
}

1.8.7 Response Codes

Status Response
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.9 GET Address for Specified Technician

Retrieve an address for a specified technician.

1.9.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/addresses/{id}

1.9.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.9.3 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician whose address you wish to retrieve. Required
{id} The id of the address you wish to retrieve. Required

1.9.4 Example Response

{
  "results": [
    {
      "city": "Munich",
      "country": "Germany",
      "id": "59052728e6434a598d1ff9965637ec1e",
      "number": 15,
      "streetName": "Rosenheimer Strasse",
      "zipCode": 81667
    }
  ]
}

1.9.5 Response Codes

Status Response
200 OK
401 Unauthorized
403 Forbidden
404 Not Found

1.10 Update Crowd Technician Address

Update address for specified Crowd technician.

1.10.1 Request

Method URL
PUT https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/addresses/{id}

1.10.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.10.3 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician whose address you wish to update. Required
{id} The id of the address you wish to update. Required

1.10.4 Request Body

The following values are supported in a PUT request to update an existing address for an existing Crowd technician:

Value Description Type Required
city The city associated with the Crowd technician address. String  
country The country associated with the Crowd technician address. String  
id The unique ID associated with the address record. This ID can be used to perform DELETE and PUT requests. String  
number The street number associated with the Crowd technician address. String  
streetName The name of the street associated with the Crowd technician address. String  

1.10.5 Example Request Body

{
  "results": [
    {
      "city": "Munich",
      "country": "Germany",
      "id": "59052728e6434a598d1ff9965637ec1e",
      "number": 15,
      "streetName": "Rosenheimer Strasse",
      "zipCode": 81667
    }
  ]
}

1.10.6 Response Codes

Status Response
200 OK
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.11 Delete Crowd Technician Address

Delete an address for a specified Crowd technician.

1.11.1 Request

Method URL
DELETE https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/addresses/{id}

1.11.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.11.3 URL Parameters

URL Parameter Description Required
{external-id} The cloud identifier externalId of the Crowd technician whose address you wish to delete. Required
{id} The id of the address you wish to delete. Required

1.11.4 Response Codes

Status Response
204 No Content
401 Unauthorized
403 Forbidden

1.12 Process Batch Operation on Addresses

Perform a batch operation on Crowd technician addresses.

1.12.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/addresses/actions/batch

1.12.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.12.3 URL Parameters

URL Parameter Description   Required
{external-id} The externalId of the Crowd technician for whom you wish to perform a batch address operation. String Required
transactional When true the operation will be executed in a single transaction. Default value: false Boolean Optional

1.12.4 Request Body

The following values are supported for the Batch Process Address endpoint:

Value   Description Type Required
address        
  city The city associated with the Crowd technician address. String  
  country The country associated with the Crowd technician address. String  
  id The unique ID associated with the address record. String Required
  number The street number associated with the Crowd technician address. String  
  streetName The name of the street associated with the Crowd technician address. String  
  zipCode The zip code associated with the Crowd technician address. String  
id   The id of the batch operation request. String  
operation   The peration applied on concrete address. Optons include: CREATE, DELETE, UPDATE String Required

1.12.5 Example Request Body

{
  "requests": [
    {
      "address": {
        "city": "Munich",
        "country": "Germany",
        "id": "59052728e6434a598d1ff9965637ec1e",
        "number": 15,
        "streetName": "Rosenheimer Strasse",
        "zipCode": 81667
      },
      "id": 0,
      "operation": "create/delete/update"
    }
  ]
}

1.12.6 Response Codes

Status Response
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.13 GET Crowd Technician Skill by ID

Retrieves details of existing skill by id.

1.13.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}

1.13.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.13.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to retrieve a skill. Required
{id} The id of the skill you wish to retrieve. Required

1.13.4 Example Response

{
  "results": [
    {
      "approvalDecision": {
        "approvalStatus": "APPROVED",
        "reason": "Fully agree with that"
      },
      "certificate": {
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "fileName": "English_Advanced_Level_cert.pdf",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      },
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ]
}

1.13.4 Response Codes

Status Response
200 OK
401 Unauthorized
403 Forbidden
404 Not Found

1.14 Create Skill for Specified Crowd Technician

Create a skill for a specified Crowd Technician.

1.14.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}

1.14.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.14.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to create a skill. Required

1.14.4 Request Body

The following values are supported in POST requests to create a skill for a Crowd technician:

Value   Description Type Required
approvalDecision   The current approval decision status of the Crowd technician skill assignment. String  
  approvalStatus The current apprval status of the Crowd technician skill assignment. Options include: PENDING, REVIEW, APPROVED, DECLINED, APPROVED_CLOSED, DECLINED_CLOSED, CANCELLED, APPROVAL_NOT_REQUIRED String  
  reason If applicable the reason or comment associated with the Crowd technician skill assignment decision status. String  
certificate     Array  
  externalId External identifier of the certificate (id of Attachment) String  
  fileName Name of the certificate file. String  
  id Identifier of the certificate.    
expiredAt   If applicable, the date at which the skill expires. date  
starteddAt   If applicable, the date at which the skill validity begins. date  
status   The current status of the skill. String  
tagExternalID   Reference to the tag in cloud. String  
tagName   The name of the skill/requirement/tag (example: “English Proficiency”) String  
technicianExternalId   Reference to the technician in the cloud. String  
uuid   The unique identifier associated with the skill. . String Automatically generated by cloud and displayed in response.

1.14.5 Example Request Body

{
  "approvalDecision": {},
  "certificate": {},
  "expiredAt": "2019-12-31",
  "externalId": "59052728e6434a598d1ff9965637ec1e",
  "startedAt": "2019-01-01",
  "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
  "tagName": "English",
  "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
  "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
}

1.14.6 Example Response

{
  "results": [
    {
      "approvalDecision": {
        "approvalStatus": "APPROVED",
        "reason": "Fully agree with that"
      },
      "certificate": {
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "fileName": "English_Advanced_Level_cert.pdf",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      },
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ]
}

1.14.6 Response Codes

Status Response
200 OK
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.15 GET Skills for Crowd Technician

Retrieve all skills records for a specified Crowd technician and filter with optional query parameters.

1.15.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills

1.15.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.15.3 URL Parameters

Parameter Type Description Required
{external-id} String The externalId of the Crowd technician for whom you wish to update a skill. Required

1.15.4 Query Parameters

The following optional query parameters can be appended to the request to filter records:

Parameter Type Description
offset Integer The offset to be taken according to the page count and page size
page Integer The amount of results per page you wish to return.
pageNumber Integer The amount of results per page you wish to return.
pageSize Integer The amount of results per page you wish to return.
paged Boolean When true the results will be returned paged.
size Integer The number of records per page you wish to return .
sort.sorted Boolean When true, the results will be sorted in ascending order.
sort.unsorted Boolean When true, the results will be returned unsorted.
unpaged Boolean When true, the resulst will be returned unpaged.

1.15.5 Example Response

{
  "first": true,
  "last": true,
  "number": 0,
  "numberOfElements": 0,
  "results": [
    {
      "approvalDecision": {
        "approvalStatus": "APPROVED",
        "reason": "Fully agree with that"
      },
      "certificate": {
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "fileName": "English_Advanced_Level_cert.pdf",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      },
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ],
  "size": 0,
  "totalElements": 0,
  "totalPages": 0
}

1.15.6 Response Codes

Status Response
200 OK
401 Unauthorized
403 Forbidden
404 Not Found

1.16 Update Crowd Technician Skill

1.16.1 Request

Method URL
PUT https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}

1.16.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.16.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to update a skill. Required
{id} The id of the skill you wish to update. Required

1.16.4 Request Body

The following values are supported in PUT requests to update a skill for a Crowd technician:

Value   Description Type Required
approvalDecision   The current approval decision status of the Crowd technician skill assignment. String  
  approvalStatus The current apprval status of the Crowd technician skill assignment. Options include: PENDING, REVIEW, APPROVED, DECLINED, APPROVED_CLOSED, DECLINED_CLOSED, CANCELLED, APPROVAL_NOT_REQUIRED String  
  reason If applicable the reason or comment associated with the Crowd technician skill assignment decision status. String  
certificate     Array  
  externalId External identifier of the certificate (id of Attachment) String  
  fileName Name of the certificate file. String  
  id Identifier of the certificate.    
expiredAt   If applicable, the date at which the skill expires. date  
starteddAt   If applicable, the date at which the skill validity begins. date  
status   The current status of the skill. String  
tagExternalID   Reference to the tag in cloud. String  
tagName   The name of the skill/requirement/tag (example: “English Proficiency”) String  
technicianExternalId   Reference to the technician in the cloud. String  
uuid   The unique identifier associated with the skill. . String Automatically generated by cloud and displayed in response.

1.16.5 Example Request Body

{
  "approvalDecision": {},
  "certificate": {},
  "expiredAt": "2019-12-31",
  "externalId": "59052728e6434a598d1ff9965637ec1e",
  "startedAt": "2019-01-01",
  "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
  "tagName": "English",
  "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
  "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
}

1.16.6 Example Response

{
  "results": [
    {
      "approvalDecision": {
        "approvalStatus": "APPROVED",
        "reason": "Fully agree with that"
      },
      "certificate": {
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "fileName": "English_Advanced_Level_cert.pdf",
        "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      },
      "expiredAt": "2019-12-31",
      "externalId": "59052728e6434a598d1ff9965637ec1e",
      "startedAt": "2019-01-01",
      "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
      "tagName": "English",
      "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
      "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
    }
  ]
}

1.16.6 Response Codes

Status Response
200 OK
201 Created
401 Unauthorized
403 Forbidden
404 Not Found

1.17 Delete Skill by ID for Specified Crowd Technician

Method URL
DELETE https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}

1.17.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.17.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to delete a skill. Required
{id} The id of the skill you wish to delete. Required

1.17.4 Response Codes

Status Response
204 No Content
401 Unauthorized
403 Forbidden

1.18 Upload Certificate for Crowd Technician Skill

Upload a certificate for a Crowd technician skill assignment.

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}/certificates

1.18.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.18.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to upload a skill certificate. Required
{id} The id of the skill for which you wish to upload a certificate. Required

1.18.4 Request Body

In the request body should be the certificate attachment to be uploaded for the skill.


1.18.5 Response Codes

Status Response
201 Created
401 Unauthorized
403 Forbidden
404 Not Found
409 Skill already has certificate attached.

1.19 Download Crowd Technician Skill Assignment

Download a skill assignment certificate for specified Crowd technician skill.

The method allows downloading attachments for the certificate which id is specified in path.

Note: the actual content type of response depends on the attachment and will be set accordingly during response forming.

1.19.1 Request

Method URL
GET https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/{id}/certificates

1.19.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.19.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician associated with the skill certificate you wish to retrieve. Required
{id} The id of the skill associated with the certificate you wish to retrieve. Required

1.19.4 Response Codes

Code Response
200 Certificate’s attachment found and can be downloaded
401 Unauthorized
403 Forbidden
404 Skill or its certificate is not exist

1.20 Approve Crowd Technician Skill

Approve the Crowd Technician skill.

1.20.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/actions/approve

1.20.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.20.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to approve a skill. Required

1.20.4 Request Body

A skill approval POST request can conain the following values:

Value Description Type Required
id The ID of the skill you wish to approve for the Crowd technician. String Required
reason If applicable the reason or comment associated with the Crowd technician skill assignment approval. String  

1.20.5 Example Request Body

[
  {
    "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
    "reason": "Reviewed and approved"
  }
]

1.20.6 Response Codes

Status Response
201 Created
202 Accepted
401 Unauthorized
403 Forbidden
404 Not Found

1.21 Reject Crowd Technician Skill

Reject the Crowd technician skill.

1.21.1 Request

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/actions/reject

1.21.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.21.3 URL Parameters

URL Parameter Description Required
{external-id} The externalId of the Crowd technician for whom you wish to reject a skill. Required

1.21.4 Request Body

A skill approval POST request can conain the following values:

Value Description Type Required
id The ID of the skill you wish to reject for the Crowd technician. String Required
reason If applicable the reason or comment associated with the Crowd technician skill assignment rejection. String  

1.21.5 Example Request Body

[
  {
    "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98",
    "reason": "Rejected because signature absence"
  }
]

1.21.6 Response Codes

Status Response
201 Created
202 Accepted
401 Unauthorized
403 Forbidden
404 Not Found

1.22 Process Batch Operation on Skills

Method URL
POST https://{cluster}.coresuite.com/api/crowd/v2/technicians/{external-id}/skills/actions/batch

1.22.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.22.3 URL Parameters

URL Parameter Description   Required
{external-id} The externalId of the Crowd technician for whom you wish to perform a batch address operation. String Required
transactional When true the operation will be executed in a single transaction. Default value: false Boolean Optional

1.22.4 Request Body

The following values can be included in a skills batch process POST request:

Value   Description Type Required
id   The ID of the skill. String Required
operation   The peration applied on concrete address. Optons include: CREATE, DELETE, UPDATE String Required
skill        
  approvalDecision The current approval decision status of the Crowd technician skill assignment. String  
  certificate   Array  
  externalId External identifier of the certificate (id of Attachment) String  
  fileName Name of the certificate file. String  
  id Identifier of the certificate.    
  expiredAt If applicable, the date at which the skill expires. date  
  starteddAt If applicable, the date at which the skill validity begins. date  
  tagExternalID Reference to the tag in cloud. String  
  tagName The name of the skill/requirement/tag (example: “English Proficiency”) String  
  technicianExternalId Reference to the technician in the cloud. String  
  uuid The unique identifier associated with the skill. . String Automatically generated by cloud and displayed in response.

1.22.5 Example Request Body

{
  "requests": [
    {
      "id": 0,
      "operation": "create/delete/update",
      "skill": {
        "approvalDecision": {},
        "certificate": {},
        "expiredAt": "2019-12-31",
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "startedAt": "2019-01-01",
        "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
        "tagName": "English",
        "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
        "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      }
    }
  ]
}

1.22.6 Example Response

{
  "results": [
    {
      "entry": {
        "approvalDecision": {
          "approvalStatus": "APPROVED",
          "reason": "Fully agree with that"
        },
        "certificate": {
          "externalId": "59052728e6434a598d1ff9965637ec1e",
          "fileName": "English_Advanced_Level_cert.pdf",
          "id": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
        },
        "expiredAt": "2019-12-31",
        "externalId": "59052728e6434a598d1ff9965637ec1e",
        "startedAt": "2019-01-01",
        "tagExternalId": "59052728e6434a598d1ff9965637ec1e",
        "tagName": "English",
        "technicianExternalId": "59052728e6434a598d1ff9965637ec1e",
        "uuid": "eb581c4d-1eec-4200-af60-ae7be2f01a98"
      },
      "error": "string",
      "failure": true,
      "id": 1,
      "status": "success/failure"
    }
  ]
}

1.22.7 Response Codes

Status Response
201 Created
401 Unauthorized
403 Forbidden
404 Not Found