Put It Online
Publish AI-made web pages and share files as short links from any MCP client.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"put-it-online": {
"url": "https://putit.online/mcp"
}
}
}Puntos de conexión remotos
https://putit.online/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (10)
🟡upload_file(filename, content, encoding, mime_type, slug, ...)
Put a file online and get a short public link. Pass text directly, or base64 with encoding="base64" for binary files (images, PDFs, zips). An .html file becomes a web page; a .zip containing index.html becomes a website. Returns the URL and expires_at; anonymous callers also get a manage_token. Status may be "checking"/"publishing" (call get_link before sharing) or "unpublished" (not published). Limit 20 MB inline; use create_upload_session for bigger files.
Esquema de entrada
{
"type": "object",
"properties": {
"filename": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "File name including extension, e.g. \"report.pdf\" or \"index.html\". The extension decides how the link renders."
},
"content": {
"type": "string",
"description": "File content: plain text, or base64 when encoding is \"base64\" (use base64 for any binary file)."
},
"encoding": {
"default": "text",
"description": "How `content` is encoded.",
"type": "string",
"enum": [
"text",
"base64"
]
},
"mime_type": {
"description": "Optional MIME type; used to add a missing file extension.",
"type": "string",
"maxLength": 100
},
"slug": {
"type": "string",
"minLength": 3,
"maxLength": 40,
"pattern": "^[a-zA-Z0-9-]+$",
"description": "Custom link name (3-40 letters, digits, dashes); available on plans with custom names."
},
"password": {
"type": "string",
"minLength": 4,
"maxLength": 200,
"description": "Visitors must enter this password to open the link; available on plans with password protection."
}
},
"required": [
"filename",
"content"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟡create_upload_session(filename, size_bytes, slug, password)
For files too large to send inline: reserves a link and returns a one-time upload_url. PUT the raw bytes there (e.g. give the user the returned curl command), then poll get_link with the slug (and manage_token) until status is "live".
Esquema de entrada
{
"type": "object",
"properties": {
"filename": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Name of the file that will be uploaded, including extension."
},
"size_bytes": {
"description": "Expected size, checked against your plan limit up front.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"slug": {
"type": "string",
"minLength": 3,
"maxLength": 40,
"pattern": "^[a-zA-Z0-9-]+$",
"description": "Custom link name (3-40 letters, digits, dashes); available on plans with custom names."
},
"password": {
"type": "string",
"minLength": 4,
"maxLength": 200,
"description": "Visitors must enter this password to open the link; available on plans with password protection."
}
},
"required": [
"filename"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"upload_url": {
"type": "string",
"description": "One-time URL: PUT the raw file bytes here (no auth header needed)."
},
"method": {
"type": "string",
"const": "PUT"
},
"headers": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"max_bytes": {
"type": "number"
},
"expires_at": {
"type": "string"
},
"complete_url": {
"description": "When present: POST here (no body) after the PUT finishes. The curl command already does it.",
"type": "string"
},
"curl": {
"type": "string",
"description": "Ready-to-run command for the user."
},
"link": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"additionalProperties": false
}
},
"required": [
"upload_url",
"method",
"headers",
"max_bytes",
"expires_at",
"curl",
"link"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟡publish_site(files, base64_files, title, slug, password)
Put a web page or small static site you created online instantly. Pass {"files": {"index.html": "<!doctype html>…", "style.css": "…", "app.js": "…"}} (paths relative to the site root; index.html required). Images can go in base64_files. Returns the public URL. Pages are served sandboxed on their own link.
Esquema de entrada
{
"type": "object",
"properties": {
"files": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
},
"description": "Map of path -> text content, e.g. {\"index.html\": \"<!doctype html>…\", \"style.css\": \"body{…}\"}. Must include index.html."
},
"base64_files": {
"description": "Optional map of path -> base64 content for binary assets such as images.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"title": {
"description": "Name for the site (shown in the dashboard).",
"type": "string",
"maxLength": 80
},
"slug": {
"type": "string",
"minLength": 3,
"maxLength": 40,
"pattern": "^[a-zA-Z0-9-]+$",
"description": "Custom link name (3-40 letters, digits, dashes); available on plans with custom names."
},
"password": {
"type": "string",
"minLength": 4,
"maxLength": 200,
"description": "Visitors must enter this password to open the link; available on plans with password protection."
}
},
"required": [
"files"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_link(slug, manage_token)
Status of a link: live, checking, publishing, unpublished, in_review, removed (by moderation: removed_reason + appeal_url), expired or awaiting_upload; plus expiry, size and views (null when the account’s plan has no view counts). Anonymous callers pass the manage_token they got on creation.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The link name, e.g. \"k3x9pq\" (a full https://putit.online/<name> URL also works)."
},
"manage_token": {
"type": "string",
"minLength": 10,
"maxLength": 200,
"description": "Secret manage token returned when the link was created (lets anonymous callers manage it)."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_links(limit, offset)
List the links in the connected Put It Online account (newest first, permanent first). Requires a connected account.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 200
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"additionalProperties": false
}
},
"total": {
"type": "number"
},
"next_offset": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"links",
"total",
"next_offset"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🔴delete_link(slug, manage_token)
Permanently delete a link and its files. Account owners can delete their links; anonymous callers need the manage_token. This cannot be undone.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The link name, e.g. \"k3x9pq\" (a full https://putit.online/<name> URL also works)."
},
"manage_token": {
"type": "string",
"minLength": 10,
"maxLength": 200,
"description": "Secret manage token returned when the link was created (lets anonymous callers manage it)."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"deleted": {
"type": "boolean"
}
},
"required": [
"slug",
"deleted"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🔴set_password(slug, password)
Protect a link with a password (visitors must enter it), or pass null to remove it. Requires a connected account whose plan includes passwords; otherwise returns a subscription_required error.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The link name, e.g. \"k3x9pq\" (a full https://putit.online/<name> URL also works)."
},
"password": {
"anyOf": [
{
"type": "string",
"minLength": 4,
"maxLength": 200,
"description": "Visitors must enter this password to open the link; available on plans with password protection."
},
{
"type": "null"
}
],
"description": "New password, or null to remove protection."
}
},
"required": [
"slug",
"password"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢make_permanent(slug)
Turn an expiring link into a permanent one (uses one of the plan's permanent slots; see get_account). Requires a connected account whose plan includes permanent links.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The link name, e.g. \"k3x9pq\" (a full https://putit.online/<name> URL also works)."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}⚪extend(slug)
Restart an expiring link's expiry clock (also brings back a recently expired link). Permanent links are unaffected. Requires a connected account whose plan includes extending.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The link name, e.g. \"k3x9pq\" (a full https://putit.online/<name> URL also works)."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"url": {
"type": "string",
"description": "The public link to share."
},
"status": {
"type": "string",
"enum": [
"awaiting_upload",
"checking",
"live",
"in_review",
"unpublished",
"publishing",
"removed",
"expired",
"deleted"
],
"description": "checking = not live yet (poll get_link); live = shareable; unpublished = not published; publishing = will be live soon (poll get_link); in_review = not available right now; removed = removed by moderation (see removed_reason, appeal_url)."
},
"status_message": {
"type": "string"
},
"checkout_url": {
"description": "Only with status unpublished: the page where the uploader can publish this link.",
"type": "string"
},
"removed_reason": {
"description": "Only with status removed: why, in plain words.",
"type": "string"
},
"removed_category": {
"description": "Only with status removed: the moderation category (malware, phishing, explicit, …); null when not disclosed.",
"type": [
"string",
"null"
]
},
"appeal_url": {
"description": "Only with status removed: mailto link to appeal to [email protected].",
"type": "string"
},
"kind": {
"type": "string",
"description": "html | site | file | bundle | pending"
},
"title": {
"type": "string"
},
"size_bytes": {
"type": "number"
},
"file_count": {
"type": "number"
},
"views": {
"description": "View count; null when the link's account plan has no view counts, or the link has no account.",
"type": [
"number",
"null"
]
},
"permanent": {
"type": "boolean"
},
"password_protected": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"expires_at": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "null"
}
],
"description": "ISO time the link stops working; null for permanent links."
},
"manage_url": {
"description": "Private page to manage/delete the link. Only returned on creation; keep it secret.",
"type": "string"
},
"manage_token": {
"description": "Secret token for get_link/delete_link without an account. Only returned on creation.",
"type": "string"
}
},
"required": [
"slug",
"url",
"status",
"status_message",
"kind",
"title",
"size_bytes",
"file_count",
"views",
"permanent",
"password_protected",
"created_at",
"expires_at"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_account
The connected account's plan, permanent-link slots used/available, size limit and features.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"plan": {
"type": "string"
},
"plan_name": {
"type": "string"
},
"subscribed": {
"type": "boolean"
},
"permanent_links": {
"type": "object",
"properties": {
"used": {
"type": "number"
},
"limit": {
"type": "number"
}
},
"required": [
"used",
"limit"
],
"additionalProperties": false
},
"total_links": {
"type": "number"
},
"max_upload_bytes": {
"type": "number"
},
"free_link_days": {
"type": "number"
},
"features": {
"type": "object",
"properties": {
"custom_slugs": {
"type": "boolean"
},
"password_protection": {
"type": "boolean"
},
"permanent_links": {
"type": "boolean"
},
"view_counts": {
"type": "boolean"
},
"replace_files": {
"type": "boolean"
}
},
"required": [
"custom_slugs",
"password_protection",
"permanent_links",
"view_counts",
"replace_files"
],
"additionalProperties": false
},
"upgrade_url": {
"type": "string"
},
"dashboard_url": {
"type": "string"
}
},
"required": [
"email",
"plan",
"plan_name",
"subscribed",
"permanent_links",
"total_links",
"max_upload_bytes",
"free_link_days",
"features",
"upgrade_url",
"dashboard_url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Comunidad
Evidencia