create_resource
Create a manual project resource (PDF link, token, URL placeholder) on a project with a connected connector. Gated places are linked through their connector.
Purpose
Create a manual project resource. Delegates to an Action so policy checks and cache invalidation run identically to the dashboard, and a project.resource.created event fires.
Gated places (a channel, group or supergroup on Telegram, and whatever
another connector gates) cannot be created through this tool. Only the
connector can prove its installation administers the place, so a link starts
with request_resource_link and finishes
on the platform. Create manual perks here, and only once a connector on the
project is connected: a project with none answers CONNECTOR_NOT_INSTALLED.
Required ability
project-resource:create
Input schema
{
"type": "object",
"required": ["project_id", "title"],
"properties": {
"project_id": {
"type": "string",
"description": "UUID of the parent project."
},
"title": {
"type": "string",
"description": "Resource title (5..255 chars)."
},
"description": {
"type": "string",
"description": "Optional resource description. Max 1000 chars, HTML is filtered."
},
"active": {
"type": "boolean",
"description": "Defaults to true. Set false to create in inactive state."
}
}
}Output shape
{
"data": {
"id": "b73c5f21-9d80-4a6e-8215-4f70ce13a9d6",
"project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
"kind": "manual",
"connector": null,
"space": null,
"title": "Onboarding PDF",
"description": "Link to the onboarding pack.",
"active": true,
"created_at": "2026-05-18T10:05:00Z",
"updated_at": "2026-05-18T10:05:00Z"
}
}The full get_resource row: a manual perk is kind: "manual" with connector and space both null.
Example prompts
"Create a manual resource titled 'Welcome packet' on project
7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13."
"Add an onboarding resource to my Research Premium project."
Failure modes
VALIDATION_FAILED—titleis outside the 5..255 character range.CONNECTOR_NOT_INSTALLED— no connector on the project is connected, so nothing could deliver the resource; install and connect one first.RESOURCE_NOT_FOUND—project_idis unknown or out of the token's team scope.TOKEN_MISSING_ABILITY— token lacksproject-resource:create.
Related
How is this guide?
activate_resource
Switch a project resource on so the plans that link it grant it again. Emits project.resource.updated when the switch flips.
deactivate_resource
Switch a project resource off without touching the plans that sell it. Reversible with activate_resource. Emits project.resource.updated when the switch flips.