Professional Development Icon Admin Training Icon Instructor Training Icon Student Training Icon Integrations Icon System Status Icon System Requirements Icon Menu Icon Download Icon Rubric Icon Prompt Icon QuickMark Set Icon Lesson Plan Icon Success Story Icon Infographic Icon White Paper Icon White Paper Icon Press Release Icon News Story Icon Event Icon Webcast Icon Video Icon Envelope Icon Plaque Icon Lightbulb Icon Training Icon Search Icon Turnitin Logo (Text and Icon) Icon Facebook Icon Twitter Icon LinkedIn Icon Google Plus Icon Lightbulb Icon Binoculars Icon Drama Masks Icon Magnifying Glass Icon Signal Check Indicator Bars Red Flag Icon Analysis and Organization Icon
Integrate with Turnitin

When a new customer or partner integrates with our TCA we want to make sure that the integration follows our best practice guidelines and is set up to a standard that ensures the best experience. 

Why do we do a certification review?

Turnitin runs a certification review for the following reasons;

  • To document your integration for our Support Team.
  • To ensure that your integration is solid and follows best practice guidelines.
  • To trigger provisioning of your account in our Production system (if required).

When?

Once you think your integration is complete, please contact the Technical Services team via email to arrange your certification review.  Ideally, answers to the questions below would be provided in the email but not later than 24 hours prior to the session once booked. 

What Happens?

The session will be conducted via a video call which usually lasts around one hour.

During the session, you will be asked to share your screen and provide a demo of the integration. The demo should start with the configuration page, (if your use case requires it) and continue to the submission workflow showing presentation of EULA.  You may also be asked to display your integration code. 

Answers you provided to the questions below will then be discussed if any clarification or guidance is needed.

Technical Services will make appropriate notes that are passed to our Support Team as a record of your integration.

If any potential issues are discovered during the session, Technical Services will provide a follow-up email advising on the remedial development required to achieve certification.

Review questions

1.  What Integration Programming Language have you used?

2.  What is the value for X-Turnitin-Integration-Name? 

3.  What is the value for X-Turnitin-Integration-Version? 

4. Have you implemented EULA display and management as detailed here?

5.  Questions around the ‘Create a Submission’ request:

  • What does ‘owner’ and ‘submitter', (if used) map to in your Product, what are the IDs?
  • What metadata is being sent, (owner, group, group_context)?
  • What permission sets are being used?
  • What error handling and logging is in place?
  • What is the retry process for network issues and outages? Assume service can be down.
  • How do you manage HTTP 451 when the submitter has not accepted EULA?

6.  Questions around the 'Upload' request

  • Have you limited file formats or do you rely on receiving the UNSUPPORTED_FILETYPE error code?
  • Confirm your integration sets the 'filename' attribute of the 'Content-Disposition' header with the correct file extension.
  • Confirm your integration 'URL encodes' the filename attribute in the 'Content-Disposition' header.
  • What error handling and logging is in place?
  • What is the retry process for network issues and outages? Assume service can be down.

7. Questions around webhook processing following ‘Upload Submission’:

  • Is it used to immediately trigger report generation?
  • What error handling and logging is in place?
  • Is polling, (to the 'Get Submission Info' request) used to check when there is no response from a webhook?

8.  Questions around the ‘Generate Similarity Report’ request:

  • What index option is being used?
  • Confirm you are sending all 'search_repositories' and if not describe why, (the use case).
  • Do you use 'submission_auto_excludes'?
  • Are you setting 'auto_exclude_self_matching_scope' and if so what value?
  • What priority is used?
  • What, (if any) 'view_settings' are being used?
  • What error handling and logging is in place?
  • What is the retry process for network issues and outages?

9.  Questions around webhook processing following ‘Generate Similarity Report’:

  • Is this used to enable the ability to launch the viewer in your UI?
  • Is polling. (to the 'Get Report Info' request) used to check when there is no response from a webhook?
  • Is the similarity score percentage stored in your database?

10.  Questions around ‘Viewer Launch’:

  • What does 'viewer_user_id' map to in your product, what is the ID?
  • Are you handling EULA display and passing EULA attributes or relying on 'EULA Click-Through'?
  • What values do you use for 'viewer_default_permission_set'?
  • Are 'viewer_permissions', (permission set overrides) being used?
  • Is 'save_changes' being used?
  • What error handling and logging is in place?

11. Questions around 'Groups' and 'Group Attachments'

  • Are you using the 'Create / Update Group' request to trigger report regeneration on a specific date?
  • Are you using the 'Group Attachments' requests to exclude text in templates from submissions?

12. General Questions:

  • Is PDF generation being used?
  • Is the 'Delete' request being used?
  • Is there a workflow allowing re-submit for failures?
  • Is there a workflow allowing bulk resubmit?
  • Are your support staff trained?