POST restapi/personal/courses/{courseId}/folders/{folderId}/file/cloud/v1?planId={planId}

Creates a file element in the course containing the cloud file.

Returns HTTP status 403 not found, if the user don't have access to the course or folder.

Returns HTTP status 404 not found, if the course does not exist.

Request Information

URI Parameters

NameDescriptionTypeAdditional information
courseId

The course identifier.

integer

Required

folderId

The folder identifier.

integer

Required

planId

If files are added to a plan, supply this parameter so learning objectives and visibility settings are inherited from the plan

integer

Default value is 0

Body Parameters

Information about file to create

Collection of Itslearning.Web.UI.Controls.Uploaders.Metadata.FileInCloudMetadata
NameDescriptionTypeAdditional information
Id

string

None.

Name

string

None.

SourceType

Itslearning.FileRepo.Common.Models.SourceType

None.

MimeType

string

None.

viewUrl

string

None.

downloadUrl

string

None.

editUrl

string

None.

oAuthContext

Itslearning.Web.UI.Controls.Uploaders.Authorisation.OAuthContext

None.

isTemplate

boolean

None.

isRegisteredWithCasper

boolean

None.

isSupportedByCasper

boolean

None.

PlagiarismReportUrl

string

None.

Request Formats

application/json, text/json

Sample:
[
  {
    "id": "sample string 1",
    "name": "sample string 2",
    "sourceType": 1,
    "mimeType": "sample string 3",
    "viewUrl": "sample string 4",
    "downloadUrl": "sample string 5",
    "editUrl": "sample string 6",
    "oAuthContext": {
      "oAuthToken": {
        "accessToken": {
          "value": "sample string 1",
          "expirationDateUtc": "2025-06-25T14:40:37Z"
        },
        "refreshToken": "sample string 1",
        "refreshTokenExpired": true
      },
      "oAuthUser": {
        "email": "sample string 1",
        "clientId": "sample string 2",
        "mustBeImpersonated": true
      }
    },
    "isTemplate": true,
    "isRegisteredWithCasper": true,
    "isSupportedByCasper": true,
    "PlagiarismReportUrl": "sample string 10"
  },
  {
    "id": "sample string 1",
    "name": "sample string 2",
    "sourceType": 1,
    "mimeType": "sample string 3",
    "viewUrl": "sample string 4",
    "downloadUrl": "sample string 5",
    "editUrl": "sample string 6",
    "oAuthContext": {
      "oAuthToken": {
        "accessToken": {
          "value": "sample string 1",
          "expirationDateUtc": "2025-06-25T14:40:37Z"
        },
        "refreshToken": "sample string 1",
        "refreshTokenExpired": true
      },
      "oAuthUser": {
        "email": "sample string 1",
        "clientId": "sample string 2",
        "mustBeImpersonated": true
      }
    },
    "isTemplate": true,
    "isRegisteredWithCasper": true,
    "isSupportedByCasper": true,
    "PlagiarismReportUrl": "sample string 10"
  }
]

application/xml, text/xml

Sample:
<ArrayOfFileInCloudMetadata xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Metadata">
  <FileInCloudMetadata>
    <DownloadUrl>sample string 5</DownloadUrl>
    <EditUrl>sample string 6</EditUrl>
    <Id>sample string 1</Id>
    <IsRegisteredWithCasper>true</IsRegisteredWithCasper>
    <IsSupportedByCasper>true</IsSupportedByCasper>
    <IsTemplate>true</IsTemplate>
    <MimeType>sample string 3</MimeType>
    <Name>sample string 2</Name>
    <OAuthContext xmlns:d3p1="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Authorisation">
      <d3p1:OAuthToken>
        <d3p1:AccessToken>
          <d3p1:ExpirationDateUtc>2025-06-25T14:40:37Z</d3p1:ExpirationDateUtc>
          <d3p1:Value>sample string 1</d3p1:Value>
        </d3p1:AccessToken>
        <d3p1:RefreshToken>sample string 1</d3p1:RefreshToken>
        <d3p1:RefreshTokenExpired>true</d3p1:RefreshTokenExpired>
      </d3p1:OAuthToken>
      <d3p1:OAuthUser>
        <d3p1:ClientId>sample string 2</d3p1:ClientId>
        <d3p1:Email>sample string 1</d3p1:Email>
        <d3p1:MustBeImpersonated>true</d3p1:MustBeImpersonated>
      </d3p1:OAuthUser>
    </OAuthContext>
    <PlagiarismReportUrl>sample string 10</PlagiarismReportUrl>
    <SourceType>Dropbox</SourceType>
    <ViewUrl>sample string 4</ViewUrl>
  </FileInCloudMetadata>
  <FileInCloudMetadata>
    <DownloadUrl>sample string 5</DownloadUrl>
    <EditUrl>sample string 6</EditUrl>
    <Id>sample string 1</Id>
    <IsRegisteredWithCasper>true</IsRegisteredWithCasper>
    <IsSupportedByCasper>true</IsSupportedByCasper>
    <IsTemplate>true</IsTemplate>
    <MimeType>sample string 3</MimeType>
    <Name>sample string 2</Name>
    <OAuthContext xmlns:d3p1="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Authorisation">
      <d3p1:OAuthToken>
        <d3p1:AccessToken>
          <d3p1:ExpirationDateUtc>2025-06-25T14:40:37Z</d3p1:ExpirationDateUtc>
          <d3p1:Value>sample string 1</d3p1:Value>
        </d3p1:AccessToken>
        <d3p1:RefreshToken>sample string 1</d3p1:RefreshToken>
        <d3p1:RefreshTokenExpired>true</d3p1:RefreshTokenExpired>
      </d3p1:OAuthToken>
      <d3p1:OAuthUser>
        <d3p1:ClientId>sample string 2</d3p1:ClientId>
        <d3p1:Email>sample string 1</d3p1:Email>
        <d3p1:MustBeImpersonated>true</d3p1:MustBeImpersonated>
      </d3p1:OAuthUser>
    </OAuthContext>
    <PlagiarismReportUrl>sample string 10</PlagiarismReportUrl>
    <SourceType>Dropbox</SourceType>
    <ViewUrl>sample string 4</ViewUrl>
  </FileInCloudMetadata>
</ArrayOfFileInCloudMetadata>

application/x-www-form-urlencoded

Sample:
No sample available

Response Information

Resource Description

Collection of Itslearning.RestApi.Entities.Personal.Course.CreateFileResponse
NameDescriptionTypeAdditional information
ElementId

Element id for the file created

integer

None.

CloudId

The cloud id of the file created

string

None.

ErrorMessage

The error message if creation failed

string

None.

ErrorCodes

The error message if creation failed

Collection of Itslearning.RestApi.Entities.Personal.Course.FileErrorCode

None.

Success

If the creation was successful or not

boolean

None.

Title

The title for the newly created file element

string

None.

Response Formats

application/json, text/json

Sample:
[
  {
    "ElementId": 1,
    "CloudId": "sample string 2",
    "ErrorMessage": "sample string 3",
    "ErrorCodes": [],
    "Success": true,
    "Title": "sample string 5"
  },
  {
    "ElementId": 1,
    "CloudId": "sample string 2",
    "ErrorMessage": "sample string 3",
    "ErrorCodes": [],
    "Success": true,
    "Title": "sample string 5"
  }
]

application/xml, text/xml

Sample:
<ArrayOfCreateFileResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
  <CreateFileResponse>
    <CloudId>sample string 2</CloudId>
    <ElementId>1</ElementId>
    <ErrorCodes xmlns:d3p1="http://schemas.datacontract.org/2004/07/Itslearning.RestApi.Entities.Personal.Course" />
    <ErrorMessage>sample string 3</ErrorMessage>
    <Success>true</Success>
    <Title>sample string 5</Title>
  </CreateFileResponse>
  <CreateFileResponse>
    <CloudId>sample string 2</CloudId>
    <ElementId>1</ElementId>
    <ErrorCodes xmlns:d3p1="http://schemas.datacontract.org/2004/07/Itslearning.RestApi.Entities.Personal.Course" />
    <ErrorMessage>sample string 3</ErrorMessage>
    <Success>true</Success>
    <Title>sample string 5</Title>
  </CreateFileResponse>
</ArrayOfCreateFileResponse>