Username Parameter Moved from Path to QueryThe ULRs with the username parameter in the path have been changed to move the parameter to query. This has been done due to a special security vulnerability related to some special characters being used in the path. Due to this change, the following URLs have been moved: From | To | /osmc/admin/ldaps/{ldapId}/import/{username} | /osmc/admin/ldaps/{ldapId}/import | /osmc/admin/ldaps/{ldapId}/import/{username}/usergroups | /osmc/admin/ldaps/{ldapId}/importas/usergroups | /osmc/admin/ldaps/{ldapId}/import/{username}/users | /osmc/admin/ldaps/{ldapId}/importas/users | /osmc/admin/locks/{username} | /osmc/admin/locks | /osmc/admin/roles/{roleId}/users/{username} | /osmc/admin/roles/{roleId}/users | /osmc/admin/users/{username} | /osmc/admin/user | /osmc/admin/users/{username}/resourcebranchreadonlyall | /osmc/admin/user/resourcebranchreadonlyall | /osmc/admin/users/{username}/resources/{resourceId}/branches/readonly | /osmc/admin/user/resources/{resourceId}/branches/readonly | /osmc/admin/users/{username}/roles | /osmc/admin/user/roles | /osmc/resources/{resourceId}/roles/{roleId}/users/{username} | /osmc/resources/{resourceId}/roles/{roleId}/users | /osmc/workspaces/{workspaceId}/resources/{resourceId}/roles/{roleId}/users/{username} | /osmc/workspaces/{workspaceId}/resources/{resourceId}/roles/{roleId}/users | /osmc/workspaces/{workspaceId}/roles/{roleId}/users/{username} | /osmc/workspaces/{workspaceId}/roles/{roleId}/users |
New URLsRead-only Branch Deletion New API for read-only branch deletion to comply with HTTP standards. Uses HTTP PUT method. - /osmc/admin/user/resources/{resourceId}/branches/readonlydelete
- /osmc/admin/usergroups/{usergroupId}/resources/{resourceId}/branches/readonlydelete
WebhooksWebhook CRUD. - /osmc/admin/webhooks
- /osmc/admin/webhooks/{webhookId}
- /osmc/admin/webhooks/{webhookId}/status
Removed URLsDeprecated in Previous VersionNew Data TypesWebhookTriggerSimpleName | Type | Remark | type | ENUM (one of: “all”, “list”, “commit”, “any_tag”) | The trigger type. |
WebhookTriggerResourceTags Name | Type | Remark | type | ENUM (one of: “tags”) | The trigger type. | value | Array of String | The commit tags that trigger the invocation of the webhook. |
WebhookTriggerOne of: WebhookTriggerSimple, WebhookTriggerResourceTags. SetOfWebhookTriggerName | Type | Remark | type | ENUM (one of: “list”) | The trigger type. | value | Array of WebhookTrigger | Arbitrary set of webhook triggers. |
WebhookScopeAllName | Type | Remark | type | ENUM (one of: “all”) | The scope type. |
WebhookScopeResourceName | Type | Remark | type | ENUM (one of: “resource”) | The scope type. | value | UUID | The ID of the resource that constitutes the scope. |
WebhookScopeResourcesInCategory Name | Type | Remark | type | ENUM (one of: “resource_in_category”) | The scope type. | value | UUID | The ID of the category that constitutes the scope. |
WebhookScope One of: WebhookScopeAll, WebhookScopeResource, WebhookScopeResourcesInCategory. WebhookAuthenticationNoneName | Type | Remark | type | ENUM (one of: “none”) | The authentication type. |
WebhookAuthenticationBasic Name | Type | Remark | type | ENUM (one of: “type”) | The authentication type. | authentication_username | String | The username. | authentication_password | String | The password. |
WebhookAuthentication One of: WebhookAuthenticationNone, WebhookAuthenticationBasic. Webhook Name | Type | Remark | webhookId | UUID | The webhook ID. | trigger | One of: WebhookTrigger, SetOfWebhookTrigger | The trigger. | scope | WebhookScope | The scope. | enabled | Boolean | Is the webhook enabled. | type | ENUM (one of: “http”) | The webhook type. | endpoint | String | The webhook endpoint (URL). | authentication | WebhookAuthentication | The authentication. |
WebhookUpdate Name | Type | Remark | trigger | One of: WebhookTrigger, SetOfWebhookTrigger | The trigger. | scope | WebhookScope | The scope. | enabled | Boolean | Is the webhook enabled. | type | ENUM (one of: “http”) | The webhook type. | endpoint | String | The webhook endpoint (URL). | authentication | WebhookAuthentication | The authentication. |
WebhookCreateResult Name | Type | Remark | webhookId | UUID | The ID of the created webhook. |
WebhookStatusName | Type | Remark | enabled | Boolean | Is the webhook enabled. |
Additional JSON syntax complianceDue to the change in the JSON library, REST API accepts only the standard JSON syntax. One of the major changes is that a trailing comma after the last member is not valid. For example: | Code Block |
|---|
| language | text |
|---|
| title | An invalid trailing comma used after the last member |
|---|
| "kerml:esiData": {
"owningPackage": {
"@id": "b296eaf8-346d-4f05-96aa-6ed8c061b4e1"
},
"name": "testBranchElement", //non-compliant
} |
| Code Block |
|---|
| language | text |
|---|
| title | Valid comma usage |
|---|
| "kerml:esiData": {
"owningPackage": {
"@id": "b296eaf8-346d-4f05-96aa-6ed8c061b4e1"
},
"name": "testBranchElement"
} |
The Content type in an HTTP response header does not contain a character set. |