Communications

L’objet paper

Une communication soumise à un appel à communications : son titre, son résumé, ses auteurs (noms et affiliations, jamais une adresse e-mail), ses thèmes et ses références de revues vérifiées. Ses évaluations, ses relecteurs et ses notes n’en font jamais partie.

Attributs

idstring
Identifiant unique de l’objet : la référence de la communication sur la plateforme.
objectenum
Texte qui indique le type de l’objet. Toujours paper.
Valeurs possibles
  • paper
call_for_papersstring or expanded call_for_papers objectdéveloppable
L’appel à communications auquel la communication a été soumise : son identifiant, ou l’objet appel lorsqu’il est développé (expand[]=call_for_papers, ou expand[]=data.call_for_papers dans une liste).
eventstring or expanded event objectdéveloppable
L’événement de l’appel de la communication : son identifiant, ou l’objet événement lorsqu’il est développé (expand[]=event, ou expand[]=data.event dans une liste ; demande events_read).
titlestringpeut être null
Le titre de la communication.
summarystringpeut être null
Le résumé de la communication, en texte brut.
statusenum
Le statut de la communication. Un client doit accepter une valeur qu’il ne connaît pas : l’ajout d’une valeur est une évolution compatible.
Valeurs possibles
  • draft
  • submitted
  • reviewed
  • approved
  • refused
  • backup
  • waiting_for_poster
  • published
  • presented
  • canceled
categoryenumpeut être null
La catégorie de la communication ; null si elle n’en a pas. Un client doit accepter une valeur qu’il ne connaît pas.
Valeurs possibles
  • research
  • review
  • case_study
  • short_communication
  • perspective
  • technical
  • empirical
  • conceptual
  • meta_analysis
  • book_review
  • abstract
  • other
authorsarray of object
Les auteurs de la communication, dans l’ordre de leur position ; [] s’il n’y en a aucun.
Attributs enfants
namestringpeut être null
Le nom de l’auteur.
positionintegerpeut être null
La position de l’auteur dans la liste des auteurs, à partir de 1 ; null si elle n’est pas fixée.
affiliationsarray of string
Les affiliations de l’auteur, une ligne lisible chacune (nom, département, établissement, ville, pays : les parties renseignées, dans cet ordre) ; [] s’il n’en a aucune.
themesarray of string
Les noms des thèmes de la communication, triés ; [] s’il n’y en a aucun.
journal_referencesarray of object
Les références de revues de la communication vérifiées auprès de leur index ; [] s’il n’y en a aucune (une référence pas encore vérifiée est omise).
Attributs enfants
providerenum
L’index auprès duquel la référence a été vérifiée. Un client doit accepter une valeur qu’il ne connaît pas.
Valeurs possibles
  • scimago
  • scopus
  • pubmed
  • crossref
  • wos
kindenum
indexed : la communication est publiée dans la revue ; planned : elle lui sera soumise. Un client doit accepter une valeur qu’il ne connaît pas.
Valeurs possibles
  • indexed
  • planned
identifierstringpeut être null
L’identifiant de la notice dans l’index ; null s’il n’y en a pas.
doistringpeut être null
Le DOI de la communication ; null s’il n’y en a pas.
journal_titlestringpeut être null
Le titre de la revue ; null s’il n’est pas connu.
published_attimestamppeut être null
La date de publication de la communication, en secondes Unix (UTC) ; null si elle n’a pas été publiée.
presented_attimestamppeut être null
La date de présentation de la communication, en secondes Unix (UTC) ; null si elle n’a pas été présentée.
createdtimestamp
La date de création de l’objet, en secondes Unix (UTC).
updatedtimestamppeut être null
La date de la dernière modification de l’objet, en secondes Unix (UTC) ; null si la plateforme n’en a pas.
Exemple d’objet
{
  "id": "PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548",
  "object": "paper",
  "call_for_papers": "CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83",
  "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
  "title": "Seasonal storage of solar heat in district networks",
  "summary": "We report two years of measurements of a borehole store coupled to a district heating network.",
  "status": "approved",
  "category": "research",
  "authors": [
    {
      "name": "Grace Hopper",
      "position": 1,
      "affiliations": [
        "Energy Lab, Department of Physics, University of Lyon, Lyon, France"
      ]
    },
    {
      "name": "Alan Turing",
      "position": 2,
      "affiliations": []
    }
  ],
  "themes": [
    "Energy storage",
    "Solar power"
  ],
  "journal_references": [
    {
      "provider": "crossref",
      "kind": "indexed",
      "identifier": "10.1016/j.energy.2027.01.042",
      "doi": "10.1016/j.energy.2027.01.042",
      "journal_title": "Energy"
    }
  ],
  "published_at": null,
  "presented_at": null,
  "created": 1792843200,
  "updated": 1801483200
}

Lire une communication

GET/v1/papers/{id}

Renvoie la communication de cet identifiant, avec ses auteurs (noms et affiliations, jamais une adresse e-mail), ses thèmes et ses références de revues vérifiées. expand[]=call_for_papers donne l’objet appel et expand[]=event l’objet événement à la place de leurs identifiants (l’événement demande events_read). Demande le module des appels à communications dans l’offre de votre organisation. Une communication d’une autre organisation renvoie resource_missing, comme un identifiant qui n’existe pas.

Demande le droit calls_for_papers_read.

Paramètres de chemin

idstringobligatoire
L’identifiant de la communication.

Paramètres de requête

expand[]array of enumfacultatif
call_for_papers : l’objet appel à la place de son identifiant ; event : l’objet événement à la place de son identifiant (demande events_read). Répétez le paramètre pour les deux.
Valeurs possibles
  • call_for_papers
  • event

Renvoie

Renvoie l’objet paper.

Requête

curl

curl -G https://api.masterconf.com/v1/papers/PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548 \
  -H "Authorization: Bearer mcf_your_key"

JavaScript

const res = await fetch("https://api.masterconf.com/v1/papers/PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548", {
  headers: { Authorization: "Bearer mcf_your_key" },
});
const data = await res.json();

Python

import requests

res = requests.get(
    "https://api.masterconf.com/v1/papers/PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548",
    headers={"Authorization": "Bearer mcf_your_key"},
)
data = res.json()
Réponse
{
  "id": "PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548",
  "object": "paper",
  "call_for_papers": "CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83",
  "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
  "title": "Seasonal storage of solar heat in district networks",
  "summary": "We report two years of measurements of a borehole store coupled to a district heating network.",
  "status": "approved",
  "category": "research",
  "authors": [
    {
      "name": "Grace Hopper",
      "position": 1,
      "affiliations": [
        "Energy Lab, Department of Physics, University of Lyon, Lyon, France"
      ]
    },
    {
      "name": "Alan Turing",
      "position": 2,
      "affiliations": []
    }
  ],
  "themes": [
    "Energy storage",
    "Solar power"
  ],
  "journal_references": [
    {
      "provider": "crossref",
      "kind": "indexed",
      "identifier": "10.1016/j.energy.2027.01.042",
      "doi": "10.1016/j.energy.2027.01.042",
      "journal_title": "Energy"
    }
  ],
  "published_at": null,
  "presented_at": null,
  "created": 1792843200,
  "updated": 1801483200
}

Lister les communications d’un appel à communications

GET/v1/papers

Renvoie une page des communications d’un appel à communications (le paramètre call_for_papers est obligatoire), de la plus récente à la plus ancienne (created décroissant, puis id décroissant). Parcourez les pages avec starting_after (ou ending_before). Demande le module des appels à communications dans l’offre de votre organisation. Un appel d’une autre organisation renvoie resource_missing sur call_for_papers.

Demande le droit calls_for_papers_read.

Paramètres de requête

call_for_papersstringobligatoire
L’identifiant de l’appel à communications dont les communications sont listées. Obligatoire.
statusarray of enumfacultatif
Seulement les communications de ce statut. Répétez le paramètre pour en donner plusieurs (status=approved&status=published).
Valeurs possibles
  • draft
  • submitted
  • reviewed
  • approved
  • refused
  • backup
  • waiting_for_poster
  • published
  • presented
  • canceled
limitintegerfacultatif
Le nombre d’objets de la page, de 1 à 100 ; au plus 20 quand la requête a un expand[] (chaque champ développé ou inclus coûte des lectures par objet de la page).

Valeur par défaut : 10.

starting_afterstringfacultatif
Un curseur pour la page suivante : l’identifiant d’un objet de cette liste (le dernier de la page que vous avez) ; la page contient les objets qui le suivent. Pas avec ending_before.
ending_beforestringfacultatif
Un curseur pour la page précédente : l’identifiant d’un objet de cette liste (le premier de la page que vous avez) ; la page contient les objets qui le précèdent, dans le même ordre. Pas avec starting_after.
include[]array of enumfacultatif
total_count : ajouter total_count, le nombre d’objets de toute la liste.
Valeurs possibles
  • total_count
expand[]array of enumfacultatif
data.call_for_papers, data.event : l’objet appel ou l’objet événement à la place de son identifiant dans chaque communication (l’événement demande events_read). Répétez le paramètre pour les deux.
Valeurs possibles
  • data.call_for_papers
  • data.event

Renvoie

Renvoie un objet list dont les data sont des objets paper.

Requête

curl

curl -G https://api.masterconf.com/v1/papers \
  -H "Authorization: Bearer mcf_your_key" \
  --data-urlencode "call_for_papers=CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83"

JavaScript

const params = new URLSearchParams({
  "call_for_papers": "CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83",
});

const res = await fetch(`https://api.masterconf.com/v1/papers?${params}`, {
  headers: { Authorization: "Bearer mcf_your_key" },
});
const data = await res.json();

Python

import requests

res = requests.get(
    "https://api.masterconf.com/v1/papers",
    params={"call_for_papers": "CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83"},
    headers={"Authorization": "Bearer mcf_your_key"},
)
data = res.json()
Réponse
{
  "object": "list",
  "url": "/v1/papers",
  "has_more": true,
  "data": [
    {
      "id": "PAP-6e4a1b93-5c2d-4f7e-a8b0-9d3c71e2f548",
      "object": "paper",
      "call_for_papers": "CFP-2d9b6f14-7a3c-4b58-8e01-c4f7a2d95b83",
      "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
      "title": "Seasonal storage of solar heat in district networks",
      "summary": "We report two years of measurements of a borehole store coupled to a district heating network.",
      "status": "approved",
      "category": "research",
      "authors": [
        {
          "name": "Grace Hopper",
          "position": 1,
          "affiliations": [
            "Energy Lab, Department of Physics, University of Lyon, Lyon, France"
          ]
        },
        {
          "name": "Alan Turing",
          "position": 2,
          "affiliations": []
        }
      ],
      "themes": [
        "Energy storage",
        "Solar power"
      ],
      "journal_references": [
        {
          "provider": "crossref",
          "kind": "indexed",
          "identifier": "10.1016/j.energy.2027.01.042",
          "doi": "10.1016/j.energy.2027.01.042",
          "journal_title": "Energy"
        }
      ],
      "published_at": null,
      "presented_at": null,
      "created": 1792843200,
      "updated": 1801483200
    }
  ]
}