close anchor

Content

To get information on content entries:

GET /content

Parameters

Param Type Description Optional
id string The UUID of individual content entries to be delivered by this endpoint, provided in a comma-delimited list. If using this parameter, the endpoint will not filter by phase but deleted entries will not be included by default.

In order to prevent entries from being delivered by this endpoint, include a '!' prefix before the list of those to exclude.
phase string Indicate, by providing a comma-delimited list, the Elebase content phase(s) by which to filter entries, on which further information is provided in the key table below. If not provided, the default behavior of this endpoint will be to include content entries in every phase but deleted (0).
editor string The UUID of an individual user by whom to filter entries based on their editorial purview (i.e., the privilege granted to editor-level users to edit or delete entries), as defined for the project.
type string Indicate, by providing a comma-delimited list, the UUID of content type(s) by which to filter entries. Include a '+' prefix before this list of types for entries to be identified with every type declared (the default behavior of this endpoint is to provide entries in any of the type(s) included), and prefix an individual type therein with '!' to exclude content linked to it.
user_input_by string The UUID of a collaborator, being a user identified with an entry and the privilege to edit it, by which to filter entries.
user_index_of string The UUID of an individual user by whom to filter entries, being linked via the /user/content endpoint.
user_index_of_group string The UUID of a user content group, provided by the /user/content/groups endpoint, by which to filter entries. Include the user_index_of parameter with an empty value in this field to query for entries identified with that user but in none of their user content groups.
group string Indicate, by providing a comma-delimited list, the UUID of content group(s) by which to filter entries. Include a '+' prefix before this list of groups if an entry is to be identified with every group declared (the default behavior of this endpoint is to provide entries in any of the group(s) included), and prefix an individual group therein with '!' to exclude content linked to it.
content string The UUID of a content entry by which to filter entries, being linked via the /content/content endpoint. Include a '<' prefix to query only for target entries linked to by the entry indicated, or a '>' prefix for only those entries linking to the entry indicated as a target (if no prefix is included, the link between entries will be treated as bidirectional in that both primary and target entries will be provided).
point string Indicate a geographic point location on which to base the order of entries found, being a comma-delimited textual value indicating both longitude and latitude, in that order. If provided, include distance in the order field(s), too (entries not identified with a location on which to base distance from this point will be excluded, and that distance will be provided for the entries found).
polygon string Include geojson polygon geometry object coordinates (eg., '[[[0,0],[0,1],[1,1],[1,0],[0,0]]]'), or bounding box diagonal path corner points (eg., '0,0,1,1'), by which to filter entries. If provided, this endpoint will deliver only those entries with geo feature(s) existing within the boundary defined by this polygon.
votes boolean Indicate whether or not to filter entries based on the existence of votes. Include a value of true for only those entries identified with voting data, or false to identify those entries for which no voting data yet exists.
element.id -- Indicate element(s) by which to filter entries by including an element.id parameter (the id being the UUID of an individual element) with a value to be present in the data identified with that element in order for an entry to be included. If the element type is not of those provided for, or if the data provided is not valid for its element type (on which further information is provided below), an error will be yielded to that effect.
l10n boolean Indicate whether or not to filter entries based on intended localization of textual element data. If true, only entries for which non-optional text element values exist in each non-optional project locale will be included. If false, only entries for which non-optional text element values do not yet exist in each non-optional project locale will be included. This filter will not prevent entries lacking optional text element values, or text in optional project locales, from being included.
title.initial string The initial, or first, letter by which to filter based on entry titles. If plural locales indicated for the endpoint transaction, querying will be performed in the initial, or first, locale (but data will be included for each).
text string Include text by which to filter entries. Input will be parsed for up to ten keywords and treated as a filter, in that only entries with keyword(s) present in the fields below will be included.

If each term is to be present, include a '+' prefix before the first term (the default behavior will be to include entries for which any of the term(s) is present), and prefix an individual keyword therein with '!' to exclude content based on it.
fields string Indicate, by providing a comma-delimited list, the field(s) in which to expect text keyword(s) be present. If a field includes localized text, only values in the endpoint transaction locale will be queried. If empty or not provided, each of these valid fields will be included: text, title.

If text is included in the field(s) to be queried, this will filter by entry title and element-based textual data identified with entries, too: text element values, element option label text, geo feature names, file or embed title, description, IP attribution properties, and boolean-type element labels for which a value of true is identified with the entry.
order string Indicate, by providing a comma-delimited list, the field(s) by which to order entries found. Include a '-' prefix if descending order is preferred in a given field ('+' is inferred by default). If empty or not provided, these valid fields will not be explicitly included: date_time.edit, date_time.init, distance, element.id, id, ordinal.content, ordinal.group, ordinal.group.user, public, queued, text, title, vote.average, vote.quantity, vote.total.

If distance is present in the field(s) to order by, it will depend on a point being included, too.

If entries to be delivered in order by particular element values, declare this by including element.id (the id being the UUID of a date/time or integer/numeric element). If no value exists for an entry identified with the element in question, it will be excluded.

If ordinal.content is present in the list of field(s) to order by, it will depend on a primary content entry being declared (including the '<' prefix), for which linked target entries will then be provided in the order defined.

If either ordinal.group (based on an individual group) or ordinal.group.user (dependent on user_index_of_group) is present in the field(s) to order by, entries will be delivered in the preferred order for the group indicated, if defined.

If text is present in the field(s) to order by, entries will be delivered in order based on the frequency and proximity of text keyword(s) found therein, with influential but non-exclusive priority given to entries with keyword(s) present in their title.

If plural locales indicated for the endpoint transaction and title is present in the list of field(s) to order by, querying will be performed in the initial locale (but data will be included for each).

If entries to be delivered in no explicit order, include a value of '*'. This is not particularly useful for indexes or views depending on pagination, because the entries previously delivered will be unknown following an initial query of this kind; but it does provide for getting a quick batch of entries in no user-identifiable order for effect. If pagination ought not to include duplicate entries, use in favor of this a technique that involves ordering by differing field(s).
page integer Identify the page on which to begin delivering entries. If not provided, the default value of 1 will be inferred.
limit integer Indicate a total of up to 100 entries to be delivered. If not provided, the default value of 10 will be inferred.
data string Indicate, by providing a comma-delimited list, the data field(s) to be delivered by this endpoint. If empty or not provided, this endpoint will include by default each of the data field(s) identified with the content entry object.

In order to include data for particular elements only, declare this by including element.id (the id being the UUID of an individual element). If an entry is not identified with the element(s) declared, no element data will be provided for that entry.

If content types, elements, or groups will be provided, these will be delivered in object form and include each of the properties identified with them by default. Include a '-' prefix before these fields if only the type or group id, or the element id and data identified with the entry, ought to be provided.

The Elebase content phases below indicate the publication status of an entry:

Phase Description
0 The entry is deleted but not yet purged from the database.
1 The entry is an in-progress draft, either not yet in the pending queue or denied for publication by an editor. This is the default phase identified with content entries.
2 The entry is pending evaluation to be either published or denied by an editor.
3 The entry is prescheduled for delayed publication at a later date/time, but no longer in the pending queue.
4 The entry is published.

The data to be provided for an element by which to filter entries is dependent on the element type:

Type Description
boolean Indicate a value of true or false to include only those entries for which either is defined.
datetime Include a date/time by which to filter entries, being provided in ISO 8601 format. To filter entries based on the presence of a date/time earlier or later than that provided, include a '<' or '>' prefix before it. If an element value is an interval (in which a begin-end date/time both exist), an entry will be included if either of these qualify based on the date/time provided (or if, for example, the date/time provided is between them). Include two comma-delimited values, begin-to-end (in that order), to filter entries based on an interval.
id Include an exact value by which to filter entries.
intnum Integer or numeric value by which to filter entries. The default behavior of this endpoint will be to provide only entries with this exact value present. To filter entries based on the presence of a value less, or greater, than that provided, include a '<' or '>' prefix before it. Include two comma-delimited values, low-to-high (in that order), to filter entries with a value between them instead.
option Indicate, by providing a comma-delimited list, the UUID of individual element option(s) by which to filter entries. Include a '+' prefix before the first UUID to query only for entries in which each option is present (the default behavior will be to include entries for which any of the option(s) is present). If filtering by a parent option, include the UUID of that option followed by '*' to get entries identified with any option(s) of which it is a parent, too.
text Include text by which to filter entries based on its presence in their values for this element. Input will be parsed for up to ten keywords and treated as a filter, in that only entries with keyword(s) present in this element will be included. If each term is to be present, include a '+' prefix before the first term (the default behavior will be to include entries for which any of the term(s) is present in the value of this element).

The data object provided by this endpoint includes both a total (integer) of entries found, and an index (array) of content entry object(s).

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
invalid_content_phase The Elebase content phase indicated does not exist.
invalid_element_data The value provided for an element is not valid for its type. If not empty, the data included for this error will be the ID of the element in question and, depending on its type, the value provided for it.
invalid_element_type The element is not of a valid type by which to order entries found using this endpoint. The data included for this error will be the ID of the element in question.
invalid_geo_data_point The point is not a valid geographic location.
invalid_geo_data_polygon The polygon does not include valid geojson polygon geometry object coordinates or bounding box diagonal path corner points.
text_not_provided Input text keyword(s) empty or not provided, or text not included in the fields to be queried.

If an error is not described on this page, the platform-wide error table provides further information.

To post a content entry:

POST /content

In order to post an entry, log in a user identified with contributor-level privileges.

Parameters

Provide the input field(s) below as a JSON-encoded data object:

Param Type Description
title string The content entry title, provided in the endpoint transaction locale.
types array The type(s) to identify with this entry, being a one-dimensional array in which each value is the UUID of an individual content type, provided in the order in which to deliver types (and the elements identified with them) for this entry.

If a content type is linked to user group(s), the privilege to identify an entry with it will be limited to users in that, or those, group(s).

The data object provided by this endpoint is the content entry object inserted to the project.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
invalid_title The title is an empty value or not provided.
type_limit_exceeded The types provided exceed the per-entry limit defined for this project.
type_not_found The types provided include a type which does not exist in the project. The data included for this error will be the ID of the type not found.

If an error is not described on this page, the platform-wide error table provides further information.

To edit or update a content entry:

PUT /content

This endpoint provides for updating an individual content entry and its data.

If the entry is public (or in the editorial pending queue), edits that would fail testing based on individual element preferences will be denied. If the project-level preference to keep entries public upon editing is true, updates performed by non-editors will not unpublish the entry; but, if this preference is false, the default behavior of this endpoint will be to put the entry back into the editorial pending queue.

In order to edit a content entry, log in a user identified with both contributor-level privileges and the entry itself (being a collaborator), or an editor (if permitted for the entry).

Parameters

Provide the input field(s) below as a JSON-encoded data object:

Param Type Description Optional
id string The UUID of the content entry.
title string The content entry title, provided in the endpoint transaction locale.
editable boolean Indicate whether or not this entry is to be editable by users with editor-level privileges.
types array The type(s) to identify with this entry, being a one-dimensional array in which each value is the UUID of an individual content type, provided in the order in which to deliver types (and the elements identified with them) for this entry.

If a content type is linked to user group(s), the privilege to identify an entry with it will be limited to users in that, or those, group(s).
elements object The element value(s) to be identified with this entry. This is to be provided as an object with each key being the UUID of the element for which a value is being provided, and the value for each being determined in part by the element type and preferences, on which further information is provided below.

If an element is linked to user group(s), the privilege to edit values for it will be limited to users in that, or those, group(s).
groups array The content group(s) in which this entry is to exist, being a one-dimensional array in which each value is the UUID of an individual content group. In order to post an entry to a group, log in a user with owner-level privileges or an editor in a user group linked to the content group in question.

The entry will no longer be identified with groups not included in this transaction. In order to post an entry to a group individually (not deleting it from other groups in which it'd previously been included), use the /content/groups endpoint instead.

The data to be provided for elements is based on the element type and preferences:

Type Description
boolean Indicate a value of true or false.
contact Indexed, one-dimensional array in which each value, provided in the order by which to be delivered for the entry, is the UUID of an individual contact entry.
content Indexed, one-dimensional array in which each value, provided in the order by which to be delivered for the entry, is the UUID of an individual content entry.
datetime Independent of the quantity of values being declared for the element, provide an indexed, two-dimensional array in which the parent dimension includes a value for each, being an inner array of ISO 8601 date, time or date/time + zone(s) based on the element preference indicating which of these is expected.
embed Indexed, one-dimensional array in which each value, provided in the order by which to be delivered for the entry, is the UUID of an individual embed.
file Indexed, one-dimensional array in which each value, provided in the order by which to be delivered for the entry, is the UUID of an individual file.
geo In order to post or edit geo-type element data, use the /geo endpoint.
intnum Integer or numeric value, depending on the element preference indicating which of these is expected.
option Indexed, one-dimensional array in which each value is the UUID of an option identified with the element.
text Include the literal text to be identified with the element as its value for the entry in the endpoint transaction locale.

The data object provided by this endpoint is the updated content entry object.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
element_data_not_unique The elements provided include an ID-type element for which the unique preference is true, but for which the data value is not unique (i.e., the data value provided is identified with a different entry in the project). If not empty, the data included for this error will be an object including the id of the element in question.
element_not_found The elements provided include an element which does not exist, or is not enabled for use, in this project. If not empty, the data included for this error will be the ID of the element not found.
entity_not_found The entity provided does not exist. If being provided in the value for an element, the data included for this error will be an object with the id of both the entity and element in question, the entity type, and the index key of the entity in the element data provided.
integer_not_provided The value provided for the element is not an integer. If not empty, the data included for this error will be the ID of the element in question, followed by the value provided.
interval_not_provided The value provided for the element is not an interval with a begin/end date/time. If not empty, the data included for this error will be the ID of the element in question.
invalid_data_quantity The input data exceeds (or is below) the quantity limit defined in the preferences of the element for which it is provided. If not empty, the data included for this error will be the ID of the element in question, followed by the quantity limit preference identified with that element and the input total based on the data provided.
invalid_date_time The date/time provided for an element is not valid. If not empty, the data included for this error will be the ID of the element in question, followed by the date/time input provided.
invalid_date_time_order The begin date/time is to precede the end date/time.
invalid_element_data The data to be identified with an element for which a value is not optional was not included, or an invalid data type was provided. If not empty, the data included for this error will be the ID of the element in question and, depending on its type, the value provided for it or (if a text element) the locale in which a value does not yet exist.
invalid_element_type The element type is not valid for use with this endpoint. The data included for this error will be the ID of the element in question.
invalid_file_type The file type is not valid for the element, based on its preferences.
invalid_geo_data The entry does not include data for a non-optional geo-type element.
invalid_text_length The text value exceeds (or is below) the length defined in the preferences of the element for which it is provided. If not empty, the data included for this error will be an object with the id of the text element in question, the locale in which the value provided is not of the intended length, and pref indicating the length defined for the element followed by that of the value provided.
invalid_title The title provided is an empty value.
invalid_type_for_element The content type identified with an entry provided for an element is not valid, based on the element preferences. If not empty, the data included for this error will be an object indicating the type of entity for which the type is not valid and the id thereof.
type_limit_exceeded The types provided exceed the per-entry limit defined for this project.
type_not_found The types provided include a content type which does not exist in the project. The data included for this error will be the ID of the type not found.

If an error is not described on this page, the platform-wide error table provides further information.

To publish a draft content entry:

PUT /content

This endpoint provides for draft content entry publication. In order for an entry to be published, the data identified with its element(s) is tested based on the preferences for each. It is possible for a draft entry to include values that do not pass each of these tests, for instance if there is no value yet provided for an element which is not optional, or if the quantity of values provided for an element is greater or less than defined (identical for text length); but each of these is verified before publication of an entry.

In order to publish a draft content entry, log in a user identified with both contributor-level privileges and the entry itself (being a collaborator), or an editor identified with privileges for the entry.

Parameters

Provide the input field(s) below as a JSON-encoded data object:

Param Type Description
id string The UUID of the content entry.
public string The ISO 8601 date/time the content entry draft is to be published. If the user presently logged in is a contributor and not identified with the privilege to bypass editorial purview, the entry will be placed in the pending queue to be viewed, and then published or denied, by an editor. The date/time indicated will be logged either way, thereby enabling publication at the intended date/time even if first verified by an editor (provided the entry is viewed before then). In order to unpublish an entry, include an empty value in place of a date/time.

The data object provided by this endpoint is the updated content entry object.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
element_data_not_unique The elements provided include an ID-type element for which the unique preference is true, but for which the data value is not unique (i.e., the data value provided is identified with a different entry in the project). If not empty, the data included for this error will be the ID of the element in question.
invalid_data_quantity The input data exceeds (or is below) the quantity limit defined in the preferences of the element for which it is provided. If not empty, the data included for this error will be the ID of the element in question, followed by the quantity limit preference identified with that element and the input total based on the data provided.
invalid_date_time The date/time indicated for publication is not valid. If not empty, the data included for this error will be the ID of the element in question, followed by the date/time input provided.
invalid_element_data The data to be identified with an element for which a value is not optional was not included, or an illegal data type was provided. If not empty, the data included for this error will be the ID of the element in question and, depending on its type, the value provided for it or (if a text element) the locale in which a value does not yet exist.
invalid_geo_data The entry does include data for a non-optional geo element. If not empty, the data included for this error will be the ID of the geo element in question.
invalid_text_length The text value exceeds (or is below) the length defined in the preferences of the element for which it is provided. If not empty, the data included for this error will be an object with the id of the text element in question, the locale in which the value provided is not of the intended length, and pref indicating the length defined for the element followed by that of the value provided.

If an error is not described on this page, the platform-wide error table provides further information.

To delete a content entry:

DELETE /content

In order to delete a content entry, log in a user identified with privileges for the entry (being a collaborator).

Parameters

Param Type Description
id string The UUID of the content entry.

If the value of the entry's deleted property is false, this endpoint will update that property to a value of true instead but will not in fact delete, or purge, the entry from the project database. This is effectively a queue, or buffer, in which an entry is placed before one would be enabled to truly delete it (using this endpoint on an entry for which the value of its deleted property is true).

Register for an Invitation
Thank you!
We'll be in touch.
First Name*
Last Name*
(optional) Business Name
Role*
Email*