CiteWise
API PARA DESARROLLADORESv1Estable

Referencia de la API de CiteWise

Integra el control de calidad de citas en tu flujo de investigación: resuelve metadatos, inspecciona evidencias, propone correcciones, formatea estilos y procesa lotes con una API por espacio de trabajo.

URL base

https://api.citewise.devEmpezar con una solicitud

Haz tu primera solicitud

Haz tu primera solicitud

Integra el control de calidad de citas en tu flujo de investigación: resuelve metadatos, inspecciona evidencias, propone correcciones, formatea estilos y procesa lotes con una API por espacio de trabajo.

bashCiteWise API
curl https://api.citewise.dev/api/v1/citations/parse \
  -X POST \
  -H "X-API-Key: cw_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "reference": "Vaswani A. Attention Is All You Need. 2017.",
    "async": false
  }'

Resumen de autenticación

Para integraciones de servidor usa una clave API de un espacio de pago; las sesiones del navegador usan un JWT de Clerk. Cada recurso pertenece al espacio autenticado.

Convenciones

Convenciones

Integra el control de calidad de citas en tu flujo de investigación: resuelve metadatos, inspecciona evidencias, propone correcciones, formatea estilos y procesa lotes con una API por espacio de trabajo.

Tipo de contenido

JSON or multipart

Archivo de auditoría descargable con riesgo, metadatos clave y campos de revisión humana.

Trazabilidad

X-Trace-Id

Opcional request ID. The response exposes the trace ID for support.

Paginación

page + size

Las páginas de elementos por lotes empiezan en cero y admiten hasta 200 elementos.

Reintentos

Retry-After

Respeta este encabezado en respuestas de tasa, concurrencia o sistema ocupado.

API DE CITAS

Verificar y enriquecer referencias

Analiza primero y usa el citationId devuelto para consultar evidencias, correcciones y formatos. Todos los endpoints de citas pertenecen a un espacio.

POST/api/v1/citations/parse

Analizar y verificar una referencia

Devuelve los recursos y metadatos del espacio de trabajo actual.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
referencestringobligatorioCita original, DOI, URL o referencia incompleta. Máximo 8.000 caracteres.
asyncbooleanopcionalReserved for asynchronous processing. Por defecto false; send false for the immediate parse response.
jsonCiteWise API
{
  "reference": "Vaswani, A. Attention Is All You Need. 2017.",
  "async": false
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
citationIdUUID-Identificador for follow-up citation endpoints.
statusstring-Verification decision.
confidencenumber-Confianza general, de 0 a 1.
citationCitationDto-Full persisted citation, metadata fields, verification details, and APA rendering.
jsonCiteWise API
{
  "citationId": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
  "status": "VERIFIED",
  "confidence": 0.99,
  "citation": {
    "id": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
    "status": "VERIFIED",
    "confidence": 0.99,
    "title": { "fieldName": "title", "value": "Attention Is All You Need", "confidence": 0.99, "algorithm": "PROVIDER_FUSION", "evidence": [] },
    "verification": { "rawReference": "Vaswani A. ...", "normalizedReference": "Vaswani A... 2017", "matchScore": 0.99, "candidateMargin": 0.42, "features": {}, "matchedProviders": ["CROSSREF", "OPENALEX"], "contradictions": [], "candidates": [], "providerDiagnostics": [] },
    "renderedApa": "Vaswani, A., ... (2017).",
    "createdAt": "2026-01-15T10:20:30Z"
  }
}
Notas de implementación

Devuelve los recursos y metadatos del espacio de trabajo actual.

GET/api/v1/citations

Listar referencias recientes

Devuelve recent citations for the authenticated workspace, ordered by the workspace history service.

Clave API o JWT de Clerkhttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
[]CitationSummary[]-Este campo indica la confianza del resultado o del valor extraído, de 0 a 1.
jsonCiteWise API
[
  {
    "id": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
    "rawReference": "Vaswani A. Attention Is All You Need. 2017.",
    "status": "VERIFIED",
    "confidence": 0.99,
    "renderedApa": "Vaswani, A., ... (2017).",
    "createdAt": "2026-01-15T10:20:30Z"
  }
]
GET/api/v1/citations/{id}

Obtener una referencia

Devuelve los recursos y metadatos del espacio de trabajo actual.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
idUUID-Identificador persistente de la referencia.
statusstring-VERIFIED, PROBABLY_VERIFIED, AMBIGUOUS, CONFLICTING_METADATA, NOT_FOUND, INSUFFICIENT_EVIDENCE, or POSSIBLE_HALLUCINATION.
confidencenumber-Confianza general, de 0 a 1.
parsingConfidencenumber-Este campo indica la confianza del resultado o del valor extraído, de 0 a 1.
identityConfidencenumber-Este campo indica la confianza del resultado o del valor extraído, de 0 a 1.
title ... publisherFieldDto | null-Campos de metadatos resueltos con valor, confianza, algoritmo y evidencia.
verificationVerificationDto-Entrada normalizada, puntuaciones, diagnósticos, conflictos y candidatos.
renderedApastring | null-APA rendering generated during verification.
createdAtISO-8601 timestamp-Hora de creación en UTC.
jsonCiteWise API
{
  "id": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
  "status": "VERIFIED",
  "confidence": 0.99,
  "title": { "fieldName": "title", "value": "Attention Is All You Need", "confidence": 0.99 },
  "verification": { "matchedProviders": ["CROSSREF"], "contradictions": [], "candidates": [] },
  "renderedApa": "Vaswani, A., ... (2017).",
  "createdAt": "2026-01-15T10:20:30Z"
}
GET/api/v1/citations/{id}/evidence

Obtener evidencia por campo

Devuelve provider evidence grouped by metadata field. Use this to show why a field was accepted or investigate a contradiction.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
{fieldName}EvidenceDto[]-Dynamic keys such as title, authors, year, doi, or journal map to evidence arrays.
source / valuestring / unknown-Identificador del proveedor y valor devuelto.
sourceReliabilitynumber-Fiabilidad configurada del proveedor, de 0 a 1.
extractionConfidencenumber-Confianza de que el valor se extrajo correctamente.
contextMatchScorenumber-Grado de coincidencia entre el resultado y la referencia enviada.
weightedScorenumber-Puntuación combinada de evidencia.
createdAtISO-8601 timestamp-Hora de recopilación de evidencia en UTC.
jsonCiteWise API
{
  "title": [
    { "source": "CROSSREF", "value": "Attention Is All You Need", "sourceReliability": 0.98, "extractionConfidence": 1.0, "contextMatchScore": 0.99, "weightedScore": 0.97, "createdAt": "2026-01-15T10:20:30Z" }
  ],
  "doi": []
}
POST/api/v1/citations/{id}/correction-proposals

Generar propuestas de corrección

Devuelve los recursos y metadatos del espacio de trabajo actual.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
citationIdUUID-Citation being evaluated.
decisionstring-PROPOSED, NO_CHANGES, or REVIEW_REQUIRED.
changesCorrectionChangeDto[]-Este campo indica la confianza del resultado o del valor extraído, de 0 a 1.
unresolvedConflictsstring[]-Conflicts that could not be resolved automatically.
jsonCiteWise API
{
  "citationId": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
  "decision": "PROPOSED",
  "changes": [{ "field": "doi", "changeType": "RECOVERED", "originalValue": null, "proposedValue": "10.48550/arXiv.1706.03762", "confidence": 0.98, "provenance": "PROVIDER_BACKED", "sources": ["CROSSREF"], "reason": "Proposed value is supported by external scholarly metadata" }],
  "unresolvedConflicts": []
}
POST/api/v1/citations/render

Formatear estilos de cita

Renders a stored citation or caller-supplied metadata in one or more supported styles. Exactly one of citationId or metadata is obligatorio.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
citationIdUUID-Almacenado citation. Mutually exclusive with metadata.
metadataCitationMetadataRequest-Inline metadata. Include at least one field; mutually exclusive with citationId.
stylesstring[]-Hasta 10 styles. Por defecto ["APA7"]. Admitidos: APA7, MLA9, CHICAGO_AUTHOR_DATE, IEEE, VANCOUVER, GBT7714.
jsonCiteWise API
{
  "citationId": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
  "styles": ["APA7", "MLA9", "IEEE"]
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
citationIdUUID | null-Almacenado citation ID, or null when rendering inline metadata.
renderingsobject-Map of canonical style name to rendered citation string.
jsonCiteWise API
{
  "citationId": "7d9a7d7e-9df7-4c84-9f2a-2f4a7d9c4b11",
  "renderings": { "APA7": "Vaswani, A., ... (2017).", "MLA9": "Vaswani, Ashish, et al. ...", "IEEE": "A. Vaswani et al., ..." }
}
Notas de implementación

For inline rendering, send metadata with fields such as title, authors, year, doi, and publisher. Inline metadata is not persisted.

TRABAJOS POR LOTES

Procesar flujos grandes

Usa trabajos persistentes para muchas referencias, consultar el progreso o deduplicar. La creación devuelve HTTP 202 y una cabecera Location.

POST/api/v1/citation-imports/preview

Previsualizar una importación

Número de registros incluidos en el resultado o trabajo.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: multipart/form-data

CampoTipoObligatorioDescripción
filemultipart fileobligatorioProcesa el archivo estructurado y devuelve formato, registros, advertencias y metadatos normalizados.
formatstring (query)-Opcional explicit format: BIBTEX, RIS, ENDNOTE, or CSL_JSON. The extension is used by default.
bashCiteWise API
curl -X POST "https://api.citewise.dev/api/v1/citation-imports/preview?format=RIS" -H "X-API-Key: cw_live_your_key" -F "file=@references.ris"

Procesa el archivo estructurado y devuelve formato, registros, advertencias y metadatos normalizados.

Respuesta

200 OK
CampoTipoObligatorioDescripción
formatstring-Detected format: BIBTEX, RIS, ENDNOTE, or CSL_JSON.
totalRecordsinteger-Número de source records found in the file.
validRecordsinteger-Records successfully converted to common CSL metadata.
invalidRecordsinteger-Records that could not be converted and will not enter a job.
warningCountinteger-Número de registros incluidos en el resultado o trabajo.
recordsImportRecordPreview[]-Hasta 10 previews with index, sourceKey, title, authors, year, doi, and warnings.
jsonCiteWise API
{
  "format": "BIBTEX",
  "totalRecords": 2, "validRecords": 2, "invalidRecords": 0, "warningCount": 0,
  "records": [{ "index": 1, "sourceKey": "vaswani2017", "title": "Attention Is All You Need", "authors": "Vaswani, Ashish", "year": 2017, "doi": null, "warnings": [] }]
}
POST/api/v1/citation-imports/jobs

Crear un lote de importación

Re-uploads a previously previewed structured file and creates a durable verification job. Only valid records are submitted, at least two valid records are obligatorio, and quota is reserved at this point.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: multipart/form-data

CampoTipoObligatorioDescripción
filemultipart fileobligatorioProcesa el archivo estructurado y devuelve formato, registros, advertencias y metadatos normalizados.
stylesstring[] (repeated multipart parts)-Opcional repeated form parts such as styles=APA7&styles=MLA9; defaults to APA7.
formatstring (query)-Opcional explicit format override.
bashCiteWise API
curl -X POST "https://api.citewise.dev/api/v1/citation-imports/jobs?format=RIS" -H "X-API-Key: cw_live_your_key" -F "file=@references.ris" -F "styles=APA7" -F "styles=IEEE"

The response is the same 202 job resource returned by /api/v1/citation-jobs. Each item stores its original source record, while the upload itself is not persisted. At least two valid records are obligatorio.

Respuesta

202 Accepted
CampoTipoObligatorioDescripción
idUUID-Identificador del recurso que se usará en las siguientes solicitudes.
typestring-VERIFY_AND_CORRECT or DEDUPLICATE.
statusstring-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
totalItems / processedItemsinteger-Número de registros incluidos en el resultado o trabajo.
succeededItems / failedItemsinteger-Correctos and failed item counters.
cancelRequestedboolean-Indica si cancellation has been requested.
resultobject | null-Aggregate result when the job completes.
errorCode / errorMessagestring | null-Job-level failure details, when applicable.
createdAt ... updatedAtISO-8601 timestamp-Job lifecycle timestamps in UTC.
jsonCiteWise API
{
  "id": "3f0f7d3c-7033-4b0d-92df-5e8d5ab2e7f6",
  "type": "VERIFY_AND_CORRECT",
  "status": "QUEUED",
  "totalItems": 2, "processedItems": 0, "succeededItems": 0, "failedItems": 0
}
POST/api/v1/citation-jobs

Crear un lote de citas

Devuelve el estado actual del recurso; consulta la definición del endpoint para los valores.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
typestringobligatorioVERIFY_AND_CORRECT for references, or DEDUPLICATE for existing citationIds.
referencesstring[]-Hasta 1,000 references, each up to 8,000 characters. Required for VERIFY_AND_CORRECT.
citationIdsUUID[]-Hasta 1,000 stored citation IDs. Required for DEDUPLICATE.
options.stylesstring[]-Hasta 10 render styles. Por defecto ["APA7"].
jsonCiteWise API
{
  "type": "VERIFY_AND_CORRECT",
  "references": ["Vaswani A. Attention Is All You Need. 2017.", "Devlin J. BERT: Pre-training of Deep Bidirectional Transformers. 2019."],
  "options": { "styles": ["APA7", "IEEE"] }
}

Respuesta

202 Accepted
CampoTipoObligatorioDescripción
idUUID-Identificador del recurso que se usará en las siguientes solicitudes.
typestring-VERIFY_AND_CORRECT or DEDUPLICATE.
statusstring-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
totalItems / processedItemsinteger-Número de registros incluidos en el resultado o trabajo.
succeededItems / failedItemsinteger-Correctos and failed item counters.
cancelRequestedboolean-Indica si cancellation has been requested.
resultobject | null-Aggregate result when the job completes.
errorCode / errorMessagestring | null-Job-level failure details, when applicable.
createdAt ... updatedAtISO-8601 timestamp-Job lifecycle timestamps in UTC.
jsonCiteWise API
{
  "id": "3f0f7d3c-7033-4b0d-92df-5e8d5ab2e7f6",
  "type": "VERIFY_AND_CORRECT",
  "status": "QUEUED",
  "totalItems": 2, "processedItems": 0, "succeededItems": 0, "failedItems": 0,
  "cancelRequested": false, "result": null, "errorCode": null, "errorMessage": null,
  "createdAt": "2026-01-15T10:20:30Z", "startedAt": null, "completedAt": null, "updatedAt": "2026-01-15T10:20:30Z"
}
GET/api/v1/citation-jobs/{id}

Consultar estado del lote

Devuelve el estado actual del recurso; consulta la definición del endpoint para los valores.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
idUUID-Identificador del recurso que se usará en las siguientes solicitudes.
typestring-VERIFY_AND_CORRECT or DEDUPLICATE.
statusstring-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
totalItems / processedItemsinteger-Número de registros incluidos en el resultado o trabajo.
succeededItems / failedItemsinteger-Correctos and failed item counters.
cancelRequestedboolean-Indica si cancellation has been requested.
resultobject | null-Aggregate result when the job completes.
errorCode / errorMessagestring | null-Job-level failure details, when applicable.
createdAt ... updatedAtISO-8601 timestamp-Job lifecycle timestamps in UTC.
jsonCiteWise API
{
  "id": "3f0f7d3c-7033-4b0d-92df-5e8d5ab2e7f6",
  "type": "VERIFY_AND_CORRECT",
  "status": "COMPLETED_WITH_ERRORS",
  "totalItems": 2, "processedItems": 2, "succeededItems": 1, "failedItems": 1,
  "cancelRequested": false, "result": null, "errorCode": null, "errorMessage": null,
  "createdAt": "2026-01-15T10:20:30Z", "startedAt": "2026-01-15T10:20:31Z", "completedAt": "2026-01-15T10:21:02Z", "updatedAt": "2026-01-15T10:21:02Z"
}
GET/api/v1/citation-jobs/{id}/items

Listar elementos del lote

Devuelve item-level results and failures in item-index order.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.
pageinteger (query)-Zero-indexed page number. Por defecto 0.
sizeinteger (query)-Page size, defaults to 100 and is clamped to 1-200.

Respuesta

200 OK
CampoTipoObligatorioDescripción
jobId / page / sizeUUID / integer / integer-Job ID and effective zero-indexed pagination values. Size is clamped to 1-200.
totalItems / totalPagesinteger-Paginación totals.
itemsCitationJobItemResponse[]-Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.
jsonCiteWise API
{
  "jobId": "3f0f7d3c-7033-4b0d-92df-5e8d5ab2e7f6", "page": 0, "size": 100, "totalItems": 2, "totalPages": 1,
  "items": [{ "id": "a3c1...", "index": 0, "status": "SUCCEEDED", "reference": "Vaswani A. ...", "sourceRecord": "TY  - JOUR\nTI  - ...\nER  -", "inputCitationId": null, "citationId": "7d9a...", "result": { "parsed": {}, "correction": {}, "rendered": {} }, "errorCode": null, "errorMessage": null }]
}
Notas de implementación

Opcional query parameters are page (default 0) and size (default 100, maximum 200).

PATCH/api/v1/citation-jobs/{jobId}/items/{itemId}/review

Registrar una decisión humana

Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
jobIdUUIDobligatorioDevuelve la clasificación de riesgo, la acción recomendada, el progreso de revisión y el resumen de la auditoría.
itemIdUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
decisionstringobligatorioACCEPT_RESOLVED, ACCEPT_CORRECTION, CHOOSE_CANDIDATE, KEEP_ORIGINAL, MARK_FOR_REVIEW, or UNABLE_TO_DETERMINE.
candidateSourceIdstring-Identificador del recurso que se usará en las siguientes solicitudes.
notestring-Opcional reviewer note, up to 2,000 characters.
jsonCiteWise API
{
  "decision": "CHOOSE_CANDIDATE",
  "candidateSourceId": "CROSSREF:10.5555/test",
  "note": "Confirmed against the publisher record."
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
reviewDecisionstring-Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.
selectedCandidateSourceIdstring | null-Selected candidate for CHOOSE_CANDIDATE.
reviewNotestring | null-Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.
reviewedBy / reviewedAtUUID | null / timestamp-Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.
jsonCiteWise API
{
  "id": "a3c1...",
  "riskLevel": "REVIEW",
  "reviewDecision": "CHOOSE_CANDIDATE",
  "selectedCandidateSourceId": "CROSSREF:10.5555/test",
  "reviewNote": "Confirmed against the publisher record.",
  "reviewedAt": "2026-10-09T08:30:00Z"
}
Notas de implementación

Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.

POST/api/v1/citation-jobs/{id}/cancel

Cancelar un lote

Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
idUUID-Identificador del recurso que se usará en las siguientes solicitudes.
typestring-VERIFY_AND_CORRECT or DEDUPLICATE.
statusstring-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
totalItems / processedItemsinteger-Número de registros incluidos en el resultado o trabajo.
succeededItems / failedItemsinteger-Correctos and failed item counters.
cancelRequestedboolean-Indica si cancellation has been requested.
resultobject | null-Aggregate result when the job completes.
errorCode / errorMessagestring | null-Job-level failure details, when applicable.
createdAt ... updatedAtISO-8601 timestamp-Job lifecycle timestamps in UTC.
jsonCiteWise API
{
  "id": "3f0f7d3c-7033-4b0d-92df-5e8d5ab2e7f6", "type": "VERIFY_AND_CORRECT", "status": "CANCELLED",
  "totalItems": 100, "processedItems": 12, "succeededItems": 12, "failedItems": 0, "cancelRequested": true,
  "result": null, "errorCode": null, "errorMessage": null, "createdAt": "2026-01-15T10:20:30Z", "startedAt": "2026-01-15T10:20:31Z", "completedAt": "2026-01-15T10:21:02Z", "updatedAt": "2026-01-15T10:21:02Z"
}
GET/api/v1/citation-jobs/{id}/preflight

Obtener la auditoría de referencias

Devuelve the pre-submission risk summary for a batch job. Each item is classified as BLOCKING, HIGH, REVIEW, LOW, or INFO with a recommended action. The report is derived from persisted verification results and does not re-run providers or consume additional verification quota.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

200 OK
CampoTipoObligatorioDescripción
schemaVersioninteger-Actual Reference Audit schema version. Version 2 adds human review state.
summaryPreflightSummary-Devuelve la clasificación de riesgo, la acción recomendada, el progreso de revisión y el resumen de la auditoría.
itemsCitationJobItemResponse[]-Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.
limitationsstring[]-Procesa el archivo estructurado y devuelve formato, registros, advertencias y metadatos normalizados.
jsonCiteWise API
{
  "schemaVersion": 2,
  "product": "CiteWise Reference Audit",
  "summary": { "jobId": "3f0f...", "complete": true, "totalReferences": 20, "processedReferences": 20, "verified": 14, "needsReview": 4, "blocking": 2, "reviewed": 12, "pendingReview": 8, "unableToDetermine": 1 },
  "items": [{ "index": 0, "riskLevel": "HIGH", "recommendedAction": "REPLACE_IDENTIFIER", "reviewDecision": "MARK_FOR_REVIEW" }],
  "limitations": ["Provider availability can affect an individual result."]
}
Notas de implementación

Devuelve los recursos y metadatos del espacio de trabajo actual.

GET/api/v1/citation-jobs/{id}/preflight/export

Exportar la auditoría de referencias

Devuelve la clasificación de riesgo, la acción recomendada, el progreso de revisión y el resumen de la auditoría.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.
formatstring (query)obligatoriojson, csv, or html.

Respuesta

200 OK
CampoTipoObligatorioDescripción
JSONapplication/json-Versioned report with summary, enriched items, and limitations.
CSVtext/csv; charset=UTF-8-Devuelve la clasificación de riesgo, la acción recomendada, el progreso de revisión y el resumen de la auditoría.
HTMLtext/html; charset=UTF-8-Archivo de auditoría descargable con riesgo, metadatos clave y campos de revisión humana.
jsonCiteWise API
GET /api/v1/citation-jobs/3f0f.../preflight/export?format=csv

Content-Disposition: attachment; filename="citewise-preflight-3f0f7d3c.csv"
Notas de implementación

Registra la decisión, nota y hora de la revisión humana sin cambiar el riesgo del sistema ni la referencia original.

ESPACIO DE TRABAJO

Gestionar uso y credenciales

Estos endpoints pertenecen al espacio. La consola usa una sesión de Clerk; el backend también acepta claves API, pero el pago requiere una sesión interactiva de Clerk.

GET/api/v1/console/overview

Obtener resumen del espacio

Devuelve the current user, workspace, plan entitlement, monthly reference usage, and admin flag.

Clave API o JWT de Clerkhttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
userobject-id, email, displayName, imageUrl, and role.
workspaceobject-id, name, and slug.
entitlementEntitlementSnapshot-Plan code, status, monthly allowance, one-time credit balance, throughput, concurrency, and Acceso a la API.
referencesUsedinteger-Actual monthly reference reservations.
adminboolean-Indica si the user has admin privileges.
jsonCiteWise API
{
  "user": { "id": "...", "email": "researcher@example.com", "displayName": "Ada", "imageUrl": null, "role": "USER" },
  "workspace": { "id": "...", "name": "Ada's workspace", "slug": "ada-workspace" },
  "entitlement": { "planCode": "FREE", "subscriptionStatus": "ACTIVE", "monthlyReferences": 10, "creditBalance": 100, "requestsPerMinute": 10, "concurrency": 1, "apiAccess": false, "currentPeriodEnd": null, "cancelAtPeriodEnd": false, "hasSubscription": false, "canCancel": false, "canResume": false },
  "referencesUsed": 2, "admin": false
}
GET/api/v1/api-keys

Listar claves API

Devuelve los recursos y metadatos del espacio de trabajo actual.

Clave API o JWT de Clerkhttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
id / nameUUID / string-Identificador del recurso que se usará en las siguientes solicitudes.
prefix / last4string-Safe display prefix and last four secret characters.
statusstring-ACTIVE or REVOKED.
createdAt / lastUsedAt / expiresAttimestamp | null-Key lifecycle metadata.
jsonCiteWise API
[
  { "id": "c4c7...", "name": "Production pipeline", "prefix": "cw_live_a1b2c3", "last4": "xYz9", "status": "ACTIVE", "createdAt": "2026-01-15T10:20:30Z", "lastUsedAt": null, "expiresAt": null }
]
POST/api/v1/api-keys

Crear una clave API

Crea o registra el recurso solicitado y devuelve su estado actual.

Clave API o JWT de Clerkhttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
namestringobligatorioLegible name, trimmed and limited to 100 characters.
jsonCiteWise API
{
  "name": "Production pipeline"
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
keyApiKeyView-Safe key metadata returned for display.
apiKeystring-Secreto completo. This is the only response that contains it.
jsonCiteWise API
{
  "key": { "id": "c4c7...", "name": "Production pipeline", "prefix": "cw_live_a1b2c3", "last4": "xYz9", "status": "ACTIVE", "createdAt": "2026-01-15T10:20:30Z", "lastUsedAt": null, "expiresAt": null },
  "apiKey": "cw_live_a1b2c3_your-secret-value"
}
Notas de implementación

Acceso a la API must be enabled for the workspace. A workspace can have up to 10 active keys. Treat the secret like a password.

DELETE/api/v1/api-keys/{id}

Eliminar una clave API

Immediately marks a workspace API key as revoked. Existing requests using it will fail authentication.

Clave API o JWT de Clerkhttps://api.citewise.dev

Parámetros de ruta y consulta

CampoTipoObligatorioDescripción
idUUIDobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.

Respuesta

204 No Content

Sin cuerpo de respuesta.

Notas de implementación

The response has no body. Keep the key ID from the list endpoint for revocation workflows.

FACTURACIÓN

Gestionar planes y facturación

La consola usa estos endpoints. Creem es la fuente de verdad para pagos, ciclo de suscripción, métodos de pago y facturas.

GET/api/v1/billing/subscription

Obtener derechos de suscripción

Devuelve the effective plan and limits for the authenticated workspace, including free-plan defaults and cancellation state.

Clave API o JWT de Clerkhttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
planCode / subscriptionStatusstring-Devuelve el estado actual del recurso; consulta la definición del endpoint para los valores.
monthlyReferencesinteger-Cuota mensual de referencias.
creditBalanceinteger-Restantes one-time credits, consumed after the monthly allowance.
requestsPerMinute / concurrencyinteger-Throughput and concurrent execution limits.
apiAccessboolean-Indica si workspace API keys are enabled.
currentPeriodEndtimestamp | null-Actual billing period end.
cancelAtPeriodEndboolean-Indica si cancellation is scheduled at the end of the current period.
currentPeriodStarttimestamp | null-Actual billing period start.
hasSubscriptionboolean-Indica si the workspace has a provider-managed paid subscription.
canCancel / canResumeboolean-Indica si the current subscription state supports the corresponding lifecycle action.
jsonCiteWise API
{
  "planCode": "PRO", "subscriptionStatus": "ACTIVE", "monthlyReferences": 500, "creditBalance": 100, "requestsPerMinute": 60, "concurrency": 5, "apiAccess": true,
  "currentPeriodEnd": "2026-02-15T00:00:00Z", "cancelAtPeriodEnd": false, "hasSubscription": true, "canCancel": true, "canResume": false
}
POST/api/v1/billing/checkout

Crear una sesión de pago

Devuelve los recursos y metadatos del espacio de trabajo actual.

Clerk JWT obligatoriohttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
productKeystringobligatorioConfigured product key, such as pro-monthly, team-yearly, starter-pack, research-pack, or lab-pack.
jsonCiteWise API
{
  "productKey": "pro-monthly"
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
checkoutIdstring-Proveedor checkout identifier.
checkoutUrlstring-Hosted checkout URL.
jsonCiteWise API
{
  "checkoutId": "ch_123456",
  "checkoutUrl": "https://checkout.creem.io/ch_123456"
}
POST/api/v1/billing/checkout/confirm

Confirmar el pago

Devuelve el estado actual del recurso; consulta la definición del endpoint para los valores.

Clerk JWT obligatoriohttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
checkoutIdstringobligatorioIdentificador del recurso que se usará en las siguientes solicitudes.
jsonCiteWise API
{
  "checkoutId": "chk_123456"
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
hasSubscriptionboolean-True when a recurring checkout has been linked successfully.
planCode / subscriptionStatusstring-The reconciled workspace entitlement.
jsonCiteWise API
{
  "planCode": "PRO", "subscriptionStatus": "ACTIVE", "hasSubscription": true, "canCancel": true
}
POST/api/v1/billing/subscription/cancel

Cancelar una suscripción

Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.

Clerk JWT obligatoriohttps://api.citewise.dev

Cuerpo de la solicitud

Tipo de contenido: application/json

CampoTipoObligatorioDescripción
modestring (optional)-scheduled (default) or immediate.
jsonCiteWise API
{
  "mode": "scheduled"
}

Respuesta

200 OK
CampoTipoObligatorioDescripción
cancelAtPeriodEndboolean-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
currentPeriodEndtimestamp | null-La fecha through which access remains available.
jsonCiteWise API
{
  "planCode": "PRO", "subscriptionStatus": "SCHEDULED_CANCEL", "cancelAtPeriodEnd": true,
  "currentPeriodEnd": "2026-02-15T00:00:00Z"
}
POST/api/v1/billing/subscription/resume

Reanudar una suscripción

Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.

Clerk JWT obligatoriohttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
subscriptionStatusstring-Usually ACTIVE after a successful resume.
cancelAtPeriodEndboolean-Programa o ejecuta la cancelación solicitada y devuelve el estado actualizado.
jsonCiteWise API
{
  "planCode": "PRO", "subscriptionStatus": "ACTIVE", "cancelAtPeriodEnd": false
}
POST/api/v1/billing/portal

Abrir el portal de facturación

Crea o registra el recurso solicitado y devuelve su estado actual.

Clerk JWT obligatoriohttps://api.citewise.dev

Respuesta

200 OK
CampoTipoObligatorioDescripción
customerPortalLinkstring-Hosted Creem customer portal URL.
jsonCiteWise API
{
  "customerPortalLink": "https://creem.io/customer-portal/..."
}

Errores

Errores

Integra el control de calidad de citas en tu flujo de investigación: resuelve metadatos, inspecciona evidencias, propone correcciones, formatea estilos y procesa lotes con una API por espacio de trabajo.

HTTPCodeSignificado
400INVALID_REFERENCE / UNSUPPORTED_CITATION_STYLE / FUSION_FAILEDLa solicitud body is invalid, a obligatorio field is missing, a citation style is unsupported, or evidence fusion could not complete.
400INVALID_REQUESTLa solicitud body, path parameter, or obligatorio header is malformed.
401UNAUTHENTICATED / API_KEY_INVALID / WEBHOOK_SIGNATURE_INVALIDNo valid Clerk JWT or X-API-Key was provided, or a signed webhook request failed verification.
403FORBIDDEN / SUBSCRIPTION_REQUIREDThe credential is valid but cannot access this workspace or paid-only feature.
404CITATION_NOT_FOUND / JOB_NOT_FOUNDThe resource does not exist in the authenticated workspace.
405METHOD_NOT_ALLOWEDThe HTTP method is not supported by this endpoint.
415UNSUPPORTED_MEDIA_TYPELa solicitud Content-Type is not supported.
429QUOTA_EXCEEDED / API_KEY_LIMIT_REACHED / RATE_LIMIT_EXCEEDED / CONCURRENCY_LIMIT_EXCEEDED / SYSTEM_BUSYThe workspace allowance, active-key limit, or processing capacity has been reached. Honor Retry-After when present.
502/503BILLING_UNAVAILABLE / PROVIDER_UNAVAILABLE / PROVIDER_TIMEOUTA downstream billing or scholarly provider is unavailable. Retry with backoff.
500DATABASE_ERROR / INTERNAL_ERRORAn unexpected server error. Include traceId when contacting support.
¿Necesitas ayuda con la integración? Contactar soporte
Citation Verification API Reference | CiteWise