openedx.core.djangoapps.zendesk_proxy.v1 package#

Submodules#

openedx.core.djangoapps.zendesk_proxy.v1.views module#

Define request handlers used by the zendesk_proxy djangoapp

class openedx.core.djangoapps.zendesk_proxy.v1.views.ZendeskPassthroughView(**kwargs)#

Bases: APIView

An APIView that will take in inputs from an unauthenticated endpoint, and use them to securely create a zendesk ticket.

authentication_classes = (<class 'edx_rest_framework_extensions.auth.jwt.authentication.JwtAuthentication'>, <class 'openedx.core.lib.api.authentication.BearerAuthenticationAllowInactiveUser'>, <class 'edx_rest_framework_extensions.auth.session.authentication.SessionAuthenticationAllowInactiveUser'>)#
parser_classes = (<class 'rest_framework.parsers.JSONParser'>,)#
post(request)#

request body is expected to look like this: {

“requester”: {

“email”: “john@example.com”, “name”: “name”

}, “subject”: “test subject”, “comment”: {

“body”: “message details”, “uploads”: [‘file_token’],

}, “custom_fields”: [

{

“id”: ‘001’, “value”: ‘demo-course’

}

], “tags”: [“LMS”]

}

throttle_classes = (<class 'openedx.core.djangoapps.zendesk_proxy.v1.views.ZendeskProxyThrottle'>,)#
class openedx.core.djangoapps.zendesk_proxy.v1.views.ZendeskProxyThrottle#

Bases: UserRateThrottle

Custom throttle rates for this particular endpoint’s use case.

Module contents#