Create an item. Secret is in the request over TLS. Never in the response. Not MCP.
POST
/v1/itemsAuthorization
AuthorizationBearer token (JWT) · headerrequiredHydra JWT. Identity is the bound agent or a Keto member human. The host is not identity.
Request body
requiredapplication/jsonnamestringrequireduristringurisstring[]tagsstring[]kindstringAllowed:
api_keyoauthsshfilepasskeycardidentitysecretstringVault material. Request only. Never returned.
totp_seedstringTOTP seed. Request only. Never returned.
loginstringFill username. Metadata on the item. Also sealed in the envelope. Not a secret.
cardCardFieldsRequest only. Never returned. Never MCP.
Show propertiesHide properties
numberstringexp_monthstringexp_yearstringcvvstringholderstringidentityIdentityFieldsRequest only. Never returned. Never MCP.
Show propertiesHide properties
given_namestringfamily_namestringaddressstringcitystringregionstringpostalstringcountrystringphonestringemailstringResponses
200Item metadata. No secret.
idstringrequiredorg_idstringrequirednamestringrequiredkindstringrequiredAllowed:
api_keyoauthsshfilepasskeycardidentityownerOwnerrequiredShow propertiesHide properties
kindstringrequiredidstringrequiredurisstring[]requiredtagsstring[]archivedbooleanhas_totpbooleanhas_filebooleanloginstringFill username. Metadata. Not a secret. Empty if unset.
400bad request
401missing or invalid Bearer
403agent cannot create items
Request
curl -X POST "https://veil.nyc/v1/items" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "string",
"uri": "string",
"uris": [
"string"
],
"tags": [
"string"
],
"kind": "api_key",
"secret": "string",
"totp_seed": "string",
"login": "string",
"card": {
"number": "string",
"exp_month": "string",
"exp_year": "string",
"cvv": "string",
"holder": "string"
},
"identity": {
"given_name": "string",
"family_name": "string",
"address": "string",
"city": "string",
"region": "string",
"postal": "string",
"country": "string",
"phone": "string",
"email": "string"
}
}'const response = await fetch("https://veil.nyc/v1/items", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "string",
"uri": "string",
"uris": [
"string"
],
"tags": [
"string"
],
"kind": "api_key",
"secret": "string",
"totp_seed": "string",
"login": "string",
"card": {
"number": "string",
"exp_month": "string",
"exp_year": "string",
"cvv": "string",
"holder": "string"
},
"identity": {
"given_name": "string",
"family_name": "string",
"address": "string",
"city": "string",
"region": "string",
"postal": "string",
"country": "string",
"phone": "string",
"email": "string"
}
})
});import requests
response = requests.post(
"https://veil.nyc/v1/items",
headers={
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
json={
"name": "string",
"uri": "string",
"uris": [
"string"
],
"tags": [
"string"
],
"kind": "api_key",
"secret": "string",
"totp_seed": "string",
"login": "string",
"card": {
"number": "string",
"exp_month": "string",
"exp_year": "string",
"cvv": "string",
"holder": "string"
},
"identity": {
"given_name": "string",
"family_name": "string",
"address": "string",
"city": "string",
"region": "string",
"postal": "string",
"country": "string",
"phone": "string",
"email": "string"
}
},
)Response
{
"id": "string",
"org_id": "string",
"name": "string",
"kind": "api_key",
"owner": {
"kind": "string",
"id": "string"
},
"uris": [
"string"
],
"tags": [
"string"
],
"archived": true,
"has_totp": true,
"has_file": true,
"login": "string"
}bad request
missing or invalid Bearer
agent cannot create items