Skip to content

Boxes API

The Boxes API allows you to create and manage protection boxes for claimed identities. A box defines the protection policy for a claimed identity.

List boxes associated with your account.

GET /v1/lmif/boxes
const boxes = await lmif.boxes.list({
limit: 20,
policy: 'MONETIZE'
});
ParameterTypeDescription
limitintegerMax items (default: 20, max: 100)
offsetintegerItems to skip
policystringFilter by policy type
claimIdstringFilter by claim ID
{
"data": [
{
"id": "box_abc123",
"claimId": "claim_xyz789",
"identityName": "Taylor Swift",
"policy": "MONETIZE",
"enforcement": "MODERATE",
"royaltyRate": 0.10,
"status": "active",
"createdAt": "2024-01-05T00:00:00Z",
"stats": {
"totalViolations": 47,
"activeGracePeriods": 3,
"licensedPlatforms": 12,
"monthlyRevenue": 15000
}
}
],
"meta": {
"total": 1,
"limit": 20,
"offset": 0
}
}

Get details of a specific box.

GET /v1/lmif/boxes/{id}
const box = await lmif.boxes.get('box_abc123');
{
"data": {
"id": "box_abc123",
"claimId": "claim_xyz789",
"identityName": "Taylor Swift",
"policy": "MONETIZE",
"enforcement": "MODERATE",
"policyConfig": {
"royaltyRate": 0.10,
"revenueTypes": ["subscription", "per_message", "tips"],
"minimumPayout": 100,
"contentGuidelines": "https://...",
"nsfw": false
},
"status": "active",
"createdAt": "2024-01-05T00:00:00Z",
"updatedAt": "2024-01-10T00:00:00Z",
"stats": {
"totalViolations": 47,
"resolvedViolations": 44,
"activeGracePeriods": 3,
"licensedPlatforms": 12,
"totalLicenses": 15,
"monthlyRevenue": 15000,
"lifetimeRevenue": 45000
}
}
}

Create a protection box for a verified claim.

POST /v1/lmif/boxes
const box = await lmif.boxes.create({
claimId: 'claim_xyz789',
policy: 'MONETIZE',
enforcement: 'MODERATE',
policyConfig: {
royaltyRate: 0.10,
revenueTypes: ['subscription', 'per_message', 'tips'],
minimumPayout: 100,
nsfw: false
}
});
FieldTypeRequiredDescription
claimIdstringYesID of the verified claim
policystringYesPolicy type (see below)
enforcementstringNoEnforcement level (default: MODERATE)
policyConfigobjectNoPolicy-specific configuration
PolicyDescription
BLOCK_ALLNo AI avatars allowed
BLOCK_COMMERCIALAllow personal, block commercial
MONETIZEAllow with revenue share
LICENSERequire explicit license
TEAMOnly authorized accounts
OPENAllow all (monitoring only)

For MONETIZE:

{
"royaltyRate": 0.10,
"revenueTypes": ["subscription", "per_message", "tips", "ads"],
"minimumPayout": 100,
"nsfw": false
}

For LICENSE:

{
"licenseTypes": {
"personal": { "price": 0, "autoApprove": true },
"creator": { "price": 50, "autoApprove": false },
"commercial": { "price": 500, "autoApprove": false }
},
"contentGuidelines": "https://...",
"nsfw": false
}

For TEAM:

{
"authorizedAccounts": ["account_123", "account_456"],
"platformWhitelist": ["myorbit.ai"]
}

For BLOCK_COMMERCIAL:

{
"allowedUses": ["personal", "educational", "parody"]
}
{
"data": {
"id": "box_new456",
"claimId": "claim_xyz789",
"identityName": "Taylor Swift",
"policy": "MONETIZE",
"enforcement": "MODERATE",
"status": "active",
"createdAt": "2024-01-15T10:00:00Z",
"initialScan": {
"status": "in_progress",
"estimatedCompletion": "2024-01-15T10:05:00Z"
}
}
}

Update a box’s policy or configuration.

PATCH /v1/lmif/boxes/{id}
const updated = await lmif.boxes.update('box_abc123', {
policy: 'BLOCK_ALL',
enforcement: 'STRICT'
});
FieldDescription
policyPolicy type
enforcementEnforcement level
policyConfigPolicy configuration

Remove a box (stops protection).

DELETE /v1/lmif/boxes/{id}
await lmif.boxes.delete('box_abc123');
{
"data": {
"id": "box_abc123",
"deleted": true,
"deletedAt": "2024-01-15T12:00:00Z",
"activeLicenses": 15,
"licenseAction": "remain_active"
}
}

Get detailed statistics for a box.

GET /v1/lmif/boxes/{id}/stats
{
"data": {
"boxId": "box_abc123",
"period": "2024-01",
"violations": {
"detected": 47,
"resolved": 44,
"pending": 3,
"appealed": 2
},
"gracePeriods": {
"active": 3,
"expired": 41,
"resolved": 38
},
"licenses": {
"total": 15,
"active": 12,
"pending": 2,
"expired": 1
},
"revenue": {
"monthly": 15000,
"lifetime": 45000,
"byType": {
"subscriptions": 10000,
"messages": 3000,
"tips": 2000
}
},
"platforms": {
"licensed": 12,
"topPlatforms": [
{ "name": "Platform A", "revenue": 5000, "users": 10000 },
{ "name": "Platform B", "revenue": 3000, "users": 7500 }
]
}
}
}
LevelBehavior
STRICTImmediate action, no exceptions
MODERATEStandard grace period, standard review
RELAXEDExtended grace period, lenient on edge cases