# Security Permissions and Scopes

The user account associated with your OAuth 2.0 application needs security permissions to perform loads via the Bulk API. The security permissions vary by load type.

Available permissions can be retrieved by calling /services/api/x/bulk-api/v1/permissions. The scope bulkapipermission:read is needed when calling this endpoint.

Here's an example cURL request you can use.

  • Replace corpname with your portal name.
  • Replace the bearer token in the Authorization header with the token you acquired in step 1.
# Get Permissions Request
curl -X GET \
  https://{corpname}.csod.com/services/api/x/bulk-api/v1/permissions \
  -H 'Authorization: Bearer ZWRnZQ:9a690ba0d994f9073c6961a37ae398e2c9a47c91dcc2d52d72d5f6a71dd18f52'

Here's an example of a successful response. The response shows permission required for each load type.

# Get Permissions Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: private
{
    "permissions": [
        {
            "type": "ou.division",
            "permission": "Bulk API - Division OU"
        },
        {
            "type": "ou.position",
            "permission": "Bulk API - Position OU"
        },
        {
            "type": "ou.customou",
            "permission": "Bulk API - Custom OU"
        },
        {
            "type": "chr.employee",
            "permission": "Bulk API - Employee"
        }
    ]
}

Once data has been loaded, the following permission is required to view the load attempts in the Edge Import UI:

  • Access Edge Bulk API History

Additionally your OAuth 2.0 application and access tokens must have the following scopes.

Endpoint Scope
GET /services/api/x/bulk-api/v1/specification bulkapispecification:read
GET /services/api/x/bulk-api/v1/jobs/{job_id} bulkapijob:read
GET /services/api/x/bulk-api/v1/imports/{import_id}/errors
GET /services/api/x/bulk-api/v1/imports/{import_id}/report
GET /services/api/x/bulk-api/v1/imports/{import_id}/warnings bulkapiimport:read
POST /services/api/x/bulk-api/v1/schemas bulkapischema:read
POST /services/api/x/bulk-api/v1/jobs bulkapijob:create
POST /services/api/x/bulk-api/v1/imports/{import_id} bulkapiimport:load