venues.json reference

paperpush/venues.json describes each venue’s submission form: the fields the portal asks for and the constraints on each. The top-level object maps a venue slug (biorxiv, nature, …) to a venue entry. This page is generated from paperpush/venues.schema.json, which is itself generated from the Venue and Field dataclasses in paperpush/database.py – those are the source of truth.

A venue entry either stands alone or inherits another venue’s entry. An inheriting entry ("inherits": "<slug>") takes the base venue’s keys and fields wholesale, then overrides individual top-level keys, modifies or adds fields by id (restating only the keys that change; a key set to null drops the inherited value), and drops fields listed in removed_fields.

Venue entry

The keys of one venue entry (the value under a slug).

Key

Type

Description

name

string

Display name. Defaults to the slug when omitted.

fields

list of field

The fields this venue asks for during submission (see the field table).

full_name

string

Full, unabbreviated venue name.

submission_url

string

Submission/portal URL.

venue_type

preprint | journal | conference

Kind of venue: a preprint server, a journal, or a conference.

site_url

string

Public homepage URL.

submission_guide

string

URL of the author/submission guide.

description

string

Short description of the venue.

file_type_options

list of string or null

Labels offered by the portal’s per-file ‘file type’ dropdown (venue-level because the same dropdown applies to every upload).

max_upload_mb

number or null

Maximum combined size, in megabytes, of all files in one submission.

anonymous

boolean

Anonymous (double-blind) review: validate checks the attached files and linked anonymous.4open.science repositories for information identifying the authors.

deprecated

boolean

Hidden from listings but still reachable by get_venue.

inherits

string

Slug this venue inherits its field schema from. Empty/absent for a standalone venue. Distinct from submission sharing (which portal/runner/login a venue submits through), which is defined in code, not here.

removed_fields

list of string

Inherited field ids to drop. Only meaningful on an inheriting venue.

field

One entry of a venue’s fields list: a value the portal asks for. In a standalone venue every field is a full definition (id, label, and type required). In an inheriting venue a field entry is an override: only id is required, every other key is optional, and null deletes the inherited key.

Key

Type

Description

id (required)

string

Stable identifier, unique within the venue; the key used in the .sub file and for inheritance merges.

label (required)

string

Human-readable prompt shown for the field.

type (required)

text | textarea | choice | multichoice | boolean | int | file | filelist | authorlist

Widget/value kind.

required

boolean

Whether submission requires a value.

help

string

Guidance shown alongside the field.

options

list of string or null

Allowed values for choice/multichoice.

options_file

string or null

Name of a newline-separated keyword file under venues/_assets/ whose lines become this field’s options. Lets a long controlled vocabulary live in one shared text file instead of being inlined (and duplicated) in the database. When set, it supersedes any inline options.

options_recommended

boolean

For a choice/multichoice field, whether options is advisory (a value outside the list is a WARNING, not an ERROR) rather than a closed set.

default

any

Default value (any JSON type).

accept

list of string or null

Permitted file extensions for file/filelist, e.g. [“.pdf”, “.docx”]. Omit (not []) when the upload imposes no extension restriction.

fields

list of string or null

Sub-field (column) names for a structured multi-item field such as an authorlist or a pipe-delimited textarea (funding, suggested reviewers). Each item line is |-delimited in this order. A trailing ? marks an optional column (e.g. department?); every other column is required – validation flags an item whose required column is blank. Author name and the corresponding flag have their own checks and are always effectively required regardless of marker.

type_options

list of string or null

Per-file ‘file type’ dropdown choices applied to this field’s uploads.

min_count

integer or null

Inclusive lower bound on item count for a multi-item field (multichoice selections, filelist/authorlist/list-textarea lines).

max_count

integer or null

Inclusive upper bound on item count for a multi-item field.

word_count

integer or null

Maximum length in words for a text/textarea value.

character_count

integer or null

Maximum length in characters for a text/textarea value, or for the free text of a choice with options_recommended.

min_character_count

integer or null

Minimum length in characters for a text/textarea value (the lower-bound counterpart to character_count).

require_url

boolean or null

For a text/textarea, require each non-blank line of the value to be a valid http/https URL.

max_words_before_refs

integer or null

For a manuscript file, the maximum word count of the main text before the reference list.

max_pages_before_refs

integer or null

For a manuscript file (PDF), the maximum page count before the reference list.

main_text_end_headings

list of string or null

For a manuscript file, headings other than the reference list that end the main text for the *_before_refs limits (e.g. Appendix, Ethics Statement) – sections the venue excludes from its word/page count. Each is a heading phrase matched on a line of its own; the earliest match, references included, ends the main text. When set, a heading that starts its own page (only a running head or page number ahead of it) counts the main text as ending on the previous page.

max_words

integer or null

For a manuscript file, the maximum word count of the whole document (references included).

max_pages

integer or null

For a manuscript file, the maximum page count of the whole document. Verified for PDF; for .docx a best-effort cached count.

max_words_before_refs_by

ConditionalLimit or null

max_words_before_refs selected by a sibling field’s value (e.g. by article type).

max_pages_before_refs_by

ConditionalLimit or null

max_pages_before_refs selected by a sibling field’s value.

max_words_by

ConditionalLimit or null

max_words selected by a sibling field’s value.

max_pages_by

ConditionalLimit or null

max_pages selected by a sibling field’s value (e.g. Bioinformatics’ page cap by article type).

min_value

integer or null

Inclusive lower bound on the numeric value of an int field.

max_value

integer or null

Inclusive upper bound on the numeric value of an int field.

max_file_size_mb

number or null

Maximum size, in megabytes, of each individual file uploaded for a file/filelist field. Distinct from the venue-level max_upload_mb.

autofill

extract | classify | filemap | never | ``

How an autofill engine may populate the field: extract | classify | filemap | never. Empty string means infer from type.

confirm

boolean

For a required boolean, whether it is a consent checkbox that must be affirmative (vs. an informational yes/no question).

required_if

string or null

Id of another field in the same venue; when that field has a non-empty value, this field becomes required. A boolean target triggers only on an affirmative answer, since “no” means the dependent fields do not apply. Combined with required (unconditional).

ConditionalLimit

Key

Type

Description

field (required)

string

Id of the sibling field whose value selects the limit.

values (required)

map of integer

Map from the selector field’s value to the limit that applies.

default

integer or null

Limit used when the selector’s value is absent from values. None means no limit applies then.