Open Journal Systems - API Specification (3.1.x)

Download OpenAPI specification:Download

API to interact with Open Journal Systems 3.1.x.

Authentication

ApiTokenQueryParam

Security Scheme Type API Key
Query parameter name: apiToken

Submissions

Get a list of submissions.

OJS 3.1 Target:

  • See /submissions/{submissionId}.
Authorizations:
query Parameters
assignedTo
integer

Filter results by those assigned to this user ID. All users except managers and admins are automatically restricted to assigned submissions and do not need to pass this parameter.

count
integer

How many results to return in a single request. Default is 20. Max is 100.

isIncomplete
boolean

Filter the results by those for which the author has not yet completed the submission process.

isOverdue
boolean

Filter the results by those for which a reviewer has missed a deadline.

offset
integer

Offset the results returned. Use this to receive subsequent pages of requests. A count of 10 and offset of 15 will return results 15 to 25.

orderBy
string

Order the results returned. Must be one of dateSubmitted, lastModified or title. Default is dateSubmitted.

orderDirection
string

Return the results in ascending or descending order. Must be ASC or DESC. Default is DESC.

searchPhrase
string

Filter the results by a search phrase matched against the title and authors.

sectionIds
string

Filter the results by those assigned to a section.

status
string

Filter results by submission status. Pass more than one status in a comma-separated list (eg - 3,4). Must match the value of the STATUS_QUEUED, STATUS_PUBLISHED or STATUS_DECLINED constants in OJS 3.

Responses

Response samples

Content type
application/json
{
  • "itemsMax": 0,
  • "items": [
    ]
}

Get a submission by ID.

OJS 3.1 Target:

  • All keys except stages, reviewRounds and reviewAssignments

Additional notes:

  • Unpublished submissions are only returned for assigned participants, editors and admins.
  • abstract includes HTML markup.
  • pages is usually a string. But in some cases it may return an array of arrays. Each array contains two items: the start and end page. Example: [[25, 31], [45, 62]].
  • submissionProgress will be > 0 if the submission is incomplete.
  • stages, reviewRounds and reviewAssignments should only be returned for participants assigned to the submission.
  • reviewAssignments should only expose user-identifying information for editors and admins.
Authorizations:
path Parameters
submissionId
required
integer

Submission ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "_href": "string",
  • "issue": {
    },
  • "section": {
    },
  • "title": {
    },
  • "subtitle": {
    },
  • "fullTitle": {
    },
  • "prefix": {
    },
  • "authorString": "string",
  • "shortAuthorString": "string",
  • "authors": [
    ],
  • "abstract": {
    },
  • "coverImageUrl": {
    },
  • "coverImageAltText": {
    },
  • "discipline": {
    },
  • "subject": {
    },
  • "type": {
    },
  • "language": "string",
  • "sponsor": {
    },
  • "pages": "string",
  • "copyrightHolder": {
    },
  • "copyrightYear": "string",
  • "licenseUrl": "string",
  • "locale": "string",
  • "dateSubmitted": "string",
  • "dateStatusModified": "string",
  • "lastModified": "string",
  • "datePublished": "string",
  • "status": {
    },
  • "submissionProgress": 0,
  • "stages": [
    ],
  • "reviewRounds": [
    ],
  • "reviewAssignments": [
    ],
  • "urlWorkflow": "string",
  • "urlPublished": "string",
  • "galleys": [
    ],
  • "doi": "string"
}

Get submission galleys.

OJS 3.1 Target:

  • Complete

Additional Notes:

  • This endpoint will not be available until a submission has reached the Production stage.
  • _parent will return the API URL representing the associated submission.
  • publishedUrl will point to the frontend galley view (eg - /article/view/<submission-id>/<galley-id>).
  • Some of the galley file data will only be present for supplementary and artwork files.
Authorizations:
path Parameters
submissionId
required
integer

Submission ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get participants assigned to a submission.

Authorizations:
path Parameters
submissionId
required
integer

Submission ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get participants assigned to a stage of this submission's workflow.

Authorizations:
path Parameters
stageId
required
integer

Stage ID

submissionId
required
integer

Submission ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Issues

Get a list of issues.

OJS 3.1 Target:

  • See /issues/{issueId}.
  • Only published issues are returned.
  • Only the volumes, numbers and years parameters are supported.

Additional Notes:

  • Results are ordered by datePublished, most recent first.

Changes:

  • volume, number and year were changed to volumes, numbers and years in OJS 3.1.1. Multiple values can be passed as a comma-separated string (eg - 1,2,3).
Authorizations:
query Parameters
count
integer

How many results to return in a single request. Default is 20. Max is 100.

isPublished
boolean

Filter returned issues by those that have been published. Pass a false value to return only unpublished issues.

numbers
string

Filter returned issues by those assigned a specific number.

offset
integer

Offset the results returned. Use this to receive subsequent pages of requests. A count of 10 and offset of 15 will return results 15 to 25.

orderBy
string

Order the results returned. Must be one of datePublished, lastModified or seq. Default is datePublished.

orderDirection
string

Return the results in ascending or descending order. Must be ASC or DESC. Default is DESC.

volumes
string

Filter returned issues by those in a specific volume.

years
string

Filter returned issues by those in a specific year.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get the current issue.

OJS 3.1 Target

  • See '/issues/{issueId}'
Authorizations:

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "_href": "string",
  • "title": {
    },
  • "description": {
    },
  • "identification": "string",
  • "volume": 0,
  • "number": "string",
  • "year": 0,
  • "isCurrent": true,
  • "datePublished": "string",
  • "dateNotified": "string",
  • "lastModified": "string",
  • "publishedUrl": "string",
  • "doi": "string",
  • "coverImageUrl": {
    },
  • "coverImageAltText": {
    },
  • "articles": [
    ],
  • "sections": [
    ],
  • "galleys": [
    ]
}

Get an issue by ID.

OJS 3.1 Target:

  • Complete.

Additional Notes:

  • description will include HTML
  • If the issue has a custom section order, the seq property of each SectionSummary will reflect the sequence for that issue.
Authorizations:
path Parameters
issueId
required
integer

Issue ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "_href": "string",
  • "title": {
    },
  • "description": {
    },
  • "identification": "string",
  • "volume": 0,
  • "number": "string",
  • "year": 0,
  • "isCurrent": true,
  • "datePublished": "string",
  • "dateNotified": "string",
  • "lastModified": "string",
  • "publishedUrl": "string",
  • "doi": "string",
  • "coverImageUrl": {
    },
  • "coverImageAltText": {
    },
  • "articles": [
    ],
  • "sections": [
    ],
  • "galleys": [
    ]
}

Users

Only admins, journal editors, and subeditors can access these endpoints.

Get a list of users.

In Progress.

Authorizations:
query Parameters
assignedToSection
integer

Filter the results by those assigned as section editors to this section ID.

assignedToSubmission
integer

Filter results by those assigned to this submission ID.

assignedToSubmissionStage
integer

Filter results by those assigned to this submission stage. Will be ignored if no assignedToSubmission parameter exists.

count
integer

How many results to return in a single request. Default is 20. Max is 100.

offset
integer

Offset the results returned. Use this to receive subsequent pages of requests. A count of 10 and offset of 15 will return results 15 to 25.

orderBy
string

Order the results returned. Must be one of id, familyName or givenName. Default is id.

orderDirection
string

Return the results in ascending or descending order. Must be ASC or DESC. Default is DESC.

roleIds
string

Filter the results by those who have one of these user role IDs.

searchPhrase
string

Filter the results by a search phrase matched against the userName, firstName, middleName, lastName, initials, salutation, suffix, email, affiliation, biography and orcid.

status
string

Filter results by active/disabled users. Must be one of active, disabled, all. Default is active.

Responses

Response samples

Content type
application/json
{
  • "itemsMax": 0,
  • "items": [
    ]
}

Get a user by ID.

In progress.

Authorizations:
path Parameters
userId
required
integer

User ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "userName": "string",
  • "fullName": "string",
  • "firstName": "string",
  • "middleName": "string",
  • "lastName": "string",
  • "initials": "string",
  • "salutation": "string",
  • "suffix": "string",
  • "affiliation": {
    },
  • "country": "string",
  • "url": "string",
  • "email": "string",
  • "orcid": "string",
  • "groups": [
    ],
  • "biography": {
    },
  • "signature": {
    },
  • "authId": 0,
  • "authString": "string",
  • "phone": "string",
  • "mailingAddress": "string",
  • "billingAddress": "string",
  • "interests": [
    ],
  • "gossip": {
    },
  • "disabled": true,
  • "disabledReason": "string",
  • "dateRegistered": "string",
  • "dateValidated": "string",
  • "dateLastLogin": "string",
  • "mustChangePassword": true
}

Get a list of reviewers.

In Progress.

Authorizations:
query Parameters
assignedToSection
integer

Filter the results by those assigned as section editors to this section ID.

assignedToSubmission
integer

Filter results by those assigned to this submission ID.

assignedToSubmissionStage
integer

Filter results by those assigned to this submission stage. Will be ignored if no assignedToSubmission parameter exists.

averageCompletion
integer

Filter results by those who complete a review assignment within X days on average.

count
integer

How many results to return in a single request. Default is 20. Max is 100.

daysSinceLastAssignment
integer

Filter results by those who's last review was assigned at least X days ago. You can also pass a range as a string formatted as X-X.

offset
integer

Offset the results returned. Use this to receive subsequent pages of requests. A count of 10 and offset of 15 will return results 15 to 25.

orderBy
string

Order the results returned. Must be one of id, familyName or givenName. Default is id.

orderDirection
string

Return the results in ascending or descending order. Must be ASC or DESC. Default is DESC.

reviewerRating
integer

Filter results by those who have an average review assignment rating of at least X (valid ratings are between 1 and 5).

reviewsActive
integer

Filter results by those who have X review assignments currently in progress. You can also pass a range as a string formatted as X-X.

reviewsCompleted
integer

Filter results by those who have completed at least X reviews. You can also pass a range as a string formatted as X-X

searchPhrase
string

Filter the results by a search phrase matched against the userName, firstName, middleName, lastName, initials, salutation, suffix, email, affiliation, biography, orcid, interests, and gossip.

status
string

Filter results by active/disabled users. Must be one of active, disabled, all. Default is active.

Responses

Response samples

Content type
application/json
{
  • "itemsMax": 0,
  • "items": [
    ]
}

Backend

Private endpoints for OJS UI.

Submission list

Retrieve submission list

Authorizations:
query Parameters
assignedTo
integer

Assignee user ID

count
integer

How many results to return in a single request. Default is 20. Max is 100.

offset
integer

Offset the results returned. Use this to receive subsequent pages of requests. A count of 10 and offset of 15 will return results 15 to 25.

orderColumn
string
Default: "id"

Field to order by

orderDirection
string
Default: "DESC"

Order direction

searchPhrase
string

Search phrase

statuses
Array of integers

Status list

Responses