import requests
url = "https://api.datagrid.com/v1/skills/{skill_id}/clone"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.datagrid.com/v1/skills/{skill_id}/clone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://api.datagrid.com/v1/skills/{skill_id}/clone \
--header 'Authorization: Bearer <token>'{
"object": "skill",
"id": "<string>",
"scope": "user",
"category": "document_analysis",
"slash_key": "<string>",
"name": "<string>",
"description": "<string>",
"instructions": "<string>",
"required_tools": [
"<string>"
],
"preferred_tools": [
"<string>"
],
"enabled": true,
"account_id": "<string>",
"builtin_key": "<string>",
"promoted_at": "2023-11-07T05:31:56Z",
"creator_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}Clone skill
Create a private copy of any reachable skill, owned by the key’s subject. Clone is deliberately user-scope even when POST /v1/skills defaults to account: it is ‘make my own copy’, not another company skill. Requires ep:skills:write.
import requests
url = "https://api.datagrid.com/v1/skills/{skill_id}/clone"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.datagrid.com/v1/skills/{skill_id}/clone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://api.datagrid.com/v1/skills/{skill_id}/clone \
--header 'Authorization: Bearer <token>'{
"object": "skill",
"id": "<string>",
"scope": "user",
"category": "document_analysis",
"slash_key": "<string>",
"name": "<string>",
"description": "<string>",
"instructions": "<string>",
"required_tools": [
"<string>"
],
"preferred_tools": [
"<string>"
],
"enabled": true,
"account_id": "<string>",
"builtin_key": "<string>",
"promoted_at": "2023-11-07T05:31:56Z",
"creator_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The ID of the skill to clone.
Response
Cloned skill (user-scope, caller is author)
The object type, always 'skill'.
skill Unique identifier for the skill.
Ownership scope. user = private (author only), account = company-owned, builtin = global default.
user, account, builtin Category bucket for grouping in the skill picker.
document_analysis, construction_project_management, financial_analysis, estimation, quality_and_safety, scheduling, contracts_and_legal, data_and_reporting, research, communication, general_productivity The slash command key used to invoke this skill (e.g. budget-check).
Display name of the skill.
Short description shown in the skill picker.
The full instructions / system prompt for this skill.
Tool identifiers that this skill requires to function.
Tool identifiers that this skill works best with.
Whether the skill is active and available for selection.
The account (company) that owns this skill. null for user-scope and builtin skills.
For company overrides of built-in skills: the identifier of the underlying built-in. null for user-authored skills.
ISO timestamp when this skill was promoted to company scope. null for user-scope skills.
ID of the user who created this skill. null for built-in skills that have never been edited.
ISO timestamp when this skill was created.
ISO timestamp when this skill was last updated.