POST /api/figshare/articles
Price: 5 credits
Get one Figshare research output by id, page address or DOI. Returns the title, the full description, every named author with ORCID, the item type, the licence, subject categories, tags, references, funding awards, related publications, institution-defined metadata fields, the version number and the deposited files with their size, checksum and a direct download link.
Accepts the numeric article id, a figshare.com page address, a Figshare DOI and also a publisher DOI — an institutional deposit carries the journal's own DOI rather than a 10.6084 one, so do not try to derive the id from the DOI string. A DOI costs one extra lookup, an id does not. `item_type` names what the record is (dataset, figure, software, thesis, journal contribution and so on); a `journal contribution` is usually the supplementary material of a paper, and `source_doi` then points at the paper itself. Read `files[].download_url` for the actual data — Figshare is one of the few repositories that hands out a direct, unauthenticated download link. An empty `files` list with `is_metadata_record` true means the record describes data held elsewhere. `custom_fields` is defined by the depositing institution, so its names differ between records.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)article string required — Figshare article id, the address of its Figshare page, or its DOI (examples: "33620353", "https://figshare.com/articles/dataset/Wind_speed_data/32974826", "10.6084/m9.figshare.32974826", "10.1186/1471-2288-13-46"; minLength: 1)@type string (default: "FigshareArticleDetail")id string requiredurl string requireddoi string nullablehandle string nullabledescription string nullablecitation string nullableitem_type string nullableitem_type_id string nullablestatus string nullableversion string nullablesize integer nullablecreated_at string nullablemodified_at string nullablepublished_at string nullabletimeline object nullable@type string (default: "FigshareTimeline")posted_at string nullablesubmitted_at string nullablerevised_at string nullablefirst_online_date string nullablepublisher_publication_date string nullablepublisher_acceptance_date string nullablethumbnail string nullablegroup_id string nullablesource_doi string nullablesource_title string nullablelicense object nullable@type string (default: "FigshareLicense")id string nullablename string nullableurl string nullableauthors array (default: [])@type string (default: "FigshareAuthor")id string nullablefull_name string requiredfirst_name string nullablelast_name string nullableorcid string nullablealias string nullableis_active boolean nullablecategories array (default: [])@type string (default: "FigshareCategory")id string requiredparent_category_id string nullabletaxonomy_id string nullablepath string nullablesource_id string nullabletags array (default: [])references array (default: [])files array (default: [])@type string (default: "FigshareFile")id string requiredname string nullablesize integer nullablemime_type string nullabledownload_url string nullablesupplied_md5 string nullablecomputed_md5 string nullableis_link_only boolean nullablefolder string nullablefunding array (default: [])@type string (default: "FigshareFunding")id string nullablegrant_code string nullablefunder_name string nullableurl string nullableis_user_defined boolean nullablerelated_materials array (default: [])@type string (default: "FigshareRelatedMaterial")id string nullableidentifier string nullableidentifier_type string nullablerelation string nullablelink_url string nullableis_linkout boolean nullablecustom_fields array (default: [])@type string (default: "FigshareCustomField")name string requiredvalues array (default: [])field_type string nullableis_mandatory boolean nullableembargo object nullable@type string (default: "FigshareEmbargo")until_date string nullabletype string nullablereason string nullableis_public boolean nullableis_embargoed boolean nullableis_confidential boolean nullableis_metadata_record boolean nullablehas_linked_file boolean nullableis_download_disabled boolean nullableconfidential_reason string nullablemetadata_reason string nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — No Figshare article carries this id or DOI Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.