Resources
Resources represent individual content items stored within folders. Each resource maintains a complete revision history, enabling version control and content rollback capabilities. Resources can be either collection-based (following folder schemas) or component-based (using reusable component schemas).
Resources enable:
- Content Management - store and organize structured content items
- Version Control - track content changes through revisions with automatic numbering
- Schema Validation - enforce data structure through collection folder models or component schemas
- Localization Support - manage multilingual content with locale-specific data
- Reference Management - establish relationships between content items
Learn more about related resources:
- Folders API - manage folders that contain resources
- Components API - manage reusable component schemas
- Versions API - manage schema versions for validation
- Fields API - define content structure and validation rules
- Revisions API - manage resource revision history and version control
Path Parameters
- Name
:env
- Type
- string
- Description
Unique identifier of the environment
- Name
:folder
- Type
- string
- Description
Unique identifier of the folder (collection or component-based)
- Name
:resource
- Type
- string
- Description
Unique identifier of the resource
URL Pattern
Resources use the URL pattern: /v1/:env/folders/:folder/resources/
Examples:
- Resources:
/v1/7c9h4pwu/folders/6b4qd369/resources/
- Individual Resource:
/v1/7c9h4pwu/folders/6b4qd369/resources/8m3n7k2p/
Resource Object
- Name
key
- Type
- string
- Description
Unique identifier for the resource within the system.
- Name
folder
- Type
- string
- Description
Key of the folder this resource belongs to.
- Name
content_type
- Type
- string
- Description
Always
"document"
for resources.
- Name
component
- Type
- string
- Description
Key of the component schema used (for component-based resources only).
- Name
created_at
- Type
- datetime
- Description
Timestamp when the resource was created, in ISO 8601 format.
- Name
resource_owner
- Type
- string
- Description
Key of the parent resource (for strict reference folders only).
- Name
current_revision
- Type
- string
- Description
Key of the currently active revision.
Content Structure
Collection-Based Resources
Resources in collection folders follow the folder's schema model. The data structure is defined by the folder's current schema version and must include all required fields.
Component-Based Resources
Resources using component schemas must specify the component
query parameter during creation. The data structure follows the component's current published version.
Localization
Localizable fields accept objects with locale codes as keys:
{
"title": {
"en": "English Title",
"es": "Título en Español",
"fr": "Titre en Français"
}
}
References and Relations
- Reference fields link to a single resource in another folder
- Relation fields can link to multiple resources in another folder
- Values use the format:
folder_key::resource_key
for references orfolder_key::resource_key
for relations
Data Limits
- Maximum data size per revision: 1MB
- Automatic compression and optimization for storage
- Size tracking for billing and quota management
Revision Management
Each resource maintains a complete revision history. For detailed revision management:
- See Revisions API for creating, retrieving, and managing revisions
- New revisions are automatically created when resource content is updated
- The
current_revision
field always points to the latest active revision
List Resources
Retrieves all resources in the specified folder.
Success Response: 200 OK
Errors
- Name
401 Unauthorized
- Description
Authentication credentials are missing or invalid.
authentication_failed
- authentication credentials were not provided or are invalid
- Name
403 Forbidden
- Description
Insufficient permissions to view resources.
permission_denied
- insufficient permissions to perform this action
- Name
404 Not Found
- Description
The specified resource could not be found. Specific codes:
environment_not_found
- the specified environment does not existfolder_not_found
- the specified folder does not exist
Request
curl https://api.foxnose.net/v1/7c9h4pwu/folders/6b4qd369/resources/ \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiI..." \
-H "Content-Type: application/json"
Response
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"key": "8m3n7k2p",
"folder": "6b4qd369",
"content_type": "document",
"component": null,
"created_at": "2025-06-15T10:30:00.000000-05:00",
"resource_owner": null,
"current_revision": "9q5r8t1w"
},
{
"key": "4j6h9l3s",
"folder": "6b4qd369",
"content_type": "document",
"component": null,
"created_at": "2025-06-14T14:20:00.000000-05:00",
"resource_owner": null,
"current_revision": "2x7z5v8c"
}
]
}
Create Resource
Creates a new resource in the specified folder. The resource structure must conform to the folder's schema (for collection folders) or specified component schema (for other folder types).
Success Response: 201 Created
Query Parameters
- Name
component
- Type
- string
- Description
Component key for component-based resources (required for non-collection folders)
Request Body
- Name
data
- Type
- object
- Required
- required
- Description
The content data structured according to the folder's schema or component schema
Errors
- Name
401 Unauthorized
- Description
Authentication credentials are missing or invalid.
authentication_failed
- authentication credentials were not provided or are invalid
- Name
403 Forbidden
- Description
Insufficient permissions to create resources.
permission_denied
- insufficient permissions to perform this action
- Name
404 Not Found
- Description
The specified resource could not be found. Specific codes:
environment_not_found
- the specified environment does not existfolder_not_found
- the specified folder does not existcomponent_not_found
- the specified component does not exist
- Name
422 Unprocessable Content
- Description
Validation or business logic error. Specific codes:
validation_error
- data validation errors against schemacomponent_required
- component parameter required for non-collection folderscomponent_doesnt_have_active_version
- component has no published versionresource_owner_required
- resource owner required for strict reference foldersresource_owner_not_found
- specified resource owner does not existjson_size_exceeded
- data size exceeds 1MB limitplan_limit_exceeded
- resource limit for current plan exceededlocalizable_data_should_be_object
- localizable fields must be objects
Request
curl https://api.foxnose.net/v1/7c9h4pwu/folders/6b4qd369/resources/ \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiI..." \
-H "Content-Type: application/json" \
-d '{
"data": {
"title": {
"en": "Welcome to Our Blog",
"es": "Bienvenidos a Nuestro Blog"
},
"content": {
"en": "This is our first blog post...",
"es": "Esta es nuestra primera entrada..."
},
"published": true,
"author": "john_doe"
}
}'
Response
{
"key": "8m3n7k2p",
"folder": "6b4qd369",
"content_type": "document",
"component": null,
"created_at": "2025-06-16T15:30:01.514282-05:00",
"resource_owner": null,
"current_revision": "9q5r8t1w"
}
Retrieve Resource
Retrieves details of a specific resource.
Success Response: 200 OK
Errors
- Name
401 Unauthorized
- Description
Authentication credentials are missing or invalid.
authentication_failed
- authentication credentials were not provided or are invalid
- Name
403 Forbidden
- Description
Insufficient permissions to view this resource.
permission_denied
- insufficient permissions to perform this action
- Name
404 Not Found
- Description
The specified resource could not be found. Specific codes:
environment_not_found
- the specified environment does not existfolder_not_found
- the specified folder does not existresource_not_found
- the specified resource does not exist
Request
curl https://api.foxnose.net/v1/7c9h4pwu/folders/6b4qd369/resources/8m3n7k2p/ \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiI..." \
-H "Content-Type: application/json"
Response
{
"key": "8m3n7k2p",
"folder": "6b4qd369",
"content_type": "document",
"component": null,
"created_at": "2025-06-15T10:30:00.000000-05:00",
"resource_owner": null,
"current_revision": "9q5r8t1w"
}
Delete Resource
Permanently deletes a resource and all its revisions.
This operation cannot be undone. All revision history will be permanently lost.
Success Response: 204 No Content
Errors
- Name
401 Unauthorized
- Description
Authentication credentials are missing or invalid.
authentication_failed
- authentication credentials were not provided or are invalid
- Name
403 Forbidden
- Description
Insufficient permissions to delete this resource.
permission_denied
- insufficient permissions to perform this action
- Name
404 Not Found
- Description
The specified resource could not be found. Specific codes:
environment_not_found
- the specified environment does not existfolder_not_found
- the specified folder does not existresource_not_found
- the specified resource does not exist
Request
curl -X DELETE https://api.foxnose.net/v1/7c9h4pwu/folders/6b4qd369/resources/8m3n7k2p/ \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiI..." \
-H "Content-Type: application/json"