
Security News
Node.js Drops Bug Bounty Rewards After Funding Dries Up
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.
@datafire/openchannel_market
Advanced tools
Client library for OpenChannel Market API
npm install --save @datafire/openchannel_market
let openchannel_market = require('@datafire/openchannel_market').create({
username: "",
password: ""
});
.then(data => {
console.log(data);
});
openchannel_market.apps.get({}, context)
object
string: A query document. Example: {'name':'MyApp'} matches all the apps that have the name 'MyApp'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pagestring: The unique id of the user requesting this resourceboolean: Whether this result should only contain apps that are owned by this userOutput schema unknown
openchannel_market.apps.post({
"developerId": "",
"name": ""
}, context)
object
string: The unique id of the developer that is adding this appstring: The name of the appstring: The type for this appstring: A JSON object representing the pricing model type for this appstring: A custom JSON object that you can create and attach to this recordstring: A custom set of app attributes defined by the administrator and attached to this appstring: JSON object to restrict users from owning or viewing this app. Example: {'view':{'country':['Canada','Mexico']},'own':{'country':['Canada','Mexico']}} restricts users from canada and mexico from viewing or owning this appstring: JSON object to restrict users from owning or viewing this app. Example: {'view':{'country':['Canada','Mexico']},'own':{'country':['Canada','Mexico']}} restricts users from canada and mexico from viewing or owning this appstring: JSON array of data access requirementsOutput schema unknown
openchannel_market.apps.bySafeName.safeName.get({
"safeName": ""
}, context)
object
string: The safeName of the App to be locatedstring: The unique id of the user that is requesting this resourceboolean: Whether this call should be tracked as a 'view' for this app. Default is false.Output schema unknown
openchannel_market.apps.textSearch.get({
"text": "",
"fields": ""
}, context)
object
string: A query document. Example: {'name':'MyApp'} matches all the documents that have the name 'MyApp'string: The text to search for.string: A JSON array containing all the fields to be searched through. Example: ['name', 'customData.description']integer: The result set page number to be returnedinteger: The maximum number of results to return per pagestring: The unique id of the user requesting this resourceboolean: Whether this result should only contain apps that are owned by this userOutput schema unknown
openchannel_market.apps.versions.get({}, context)
object
string: A query document. Example: {'name':'MyApp'} matches all the apps that have the name 'MyApp'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pagestring: The unique id of the developer requesting this resourceOutput schema unknown
openchannel_market.apps.appId.delete({
"appId": "",
"developerId": ""
}, context)
object
string: The id of the App to be removedstring: The unique id of the developer that is removing this appOutput schema unknown
openchannel_market.apps.appId.get({
"appId": ""
}, context)
object
string: The id of the App to be locatedstring: The unique id of the user that is requesting this resourceboolean: Whether this call should be tracked as a 'view' for this app. Default is false.Output schema unknown
openchannel_market.apps.appId.live.post({
"appId": "",
"developerId": "",
"version": ""
}, context)
object
string: The id of the App to be changedstring: The unique id of the developer that is changing this AppVersionstring: The new version of the live AppOutput schema unknown
openchannel_market.apps.appId.publish.post({
"appId": "",
"developerId": "",
"version": 0
}, context)
object
string: The id of the app to be publishedstring: The unique id of the developer that is modifying this appinteger: The version of the app to be publishedboolean: If true, this AppVersion is automatically approved and becomes immediately available to end usersOutput schema unknown
openchannel_market.apps.appId.versions.version.delete({
"appId": "",
"version": "",
"developerId": ""
}, context)
object
string: The id of the App to be removedstring: The version of the App to be removedstring: The unique id of the developer that is removing this appOutput schema unknown
openchannel_market.apps.appId.versions.version.get({
"appId": "",
"version": 0
}, context)
object
string: The id of the App to be locatedinteger: The version number of the appstring: The unique id of the developer that is requesting this resourceOutput schema unknown
openchannel_market.apps.appId.versions.version.patch({
"appId": "",
"version": "",
"developerId": ""
}, context)
object
string: The id of the App to be updatedstring: The version of the App to be updatedstring: The unique id of the developer that is updating this appstring: The name of the appstring: The type for this appstring: A JSON object representing the pricing model type for this appstring: A custom JSON object that you can create and attach to this recordstring: A custom set of app attributes defined by the administrator and attached to this appstring: JSON object to restrict users from purchasing or viewing this app. Example: {'view':{'country':['Canada','Mexico']},'purchase':{'country':['Canada','Mexico']}} restricts users from canada and mexico from viewing or purchasing this appstring: JSON object to allow users to purchase or view this app. Example: {'purchase':{'country':['Canada','Mexico']}} allows only users from canada and mexico to purchase this appstring: JSON array of data access requirementsstring: False if updates should skip the approval process and be available immediately. Default is TrueOutput schema unknown
openchannel_market.apps.appId.versions.version.post({
"appId": "",
"version": "",
"developerId": ""
}, context)
object
string: The id of the App to be updatedstring: The version of the App to be updatedstring: The unique id of the developer that is updating this appstring: The name of the appstring: The type for this appstring: A JSON object representing the pricing model type for this appstring: A custom JSON object that you can create and attach to this recordstring: A custom set of app attributes defined by the administrator and attached to this appstring: JSON object to restrict users from purchasing or viewing this app. Example: {'view':{'country':['Canada','Mexico']},'purchase':{'country':['Canada','Mexico']}} restricts users from canada and mexico from viewing or purchasing this appstring: JSON object to allow users to purchase or view this app. Example: {'purchase':{'country':['Canada','Mexico']}} allows only users from canada and mexico to purchase this appstring: JSON array of data access requirementsstring: False if updates should skip the approval process and be available immediately. Default is TrueOutput schema unknown
Only certain status changes are allowed. For instance, a developer is only able to suspend and unsuspend their app (which must already be approved). See here for a state change diagram of allowed status changes for administrators: https://support.openchannel.io/documentation/api/#415-apps-status-change
openchannel_market.apps.appId.versions.version.status.post({
"appId": "",
"version": 0
}, context)
object
string: The id of the App to be updatedinteger: The version of the App to be updatedstring: The unique id of the developer that is modifying this appstring (values: inReview, approved, suspended, rejected): The new status for this app. Can be either 'inReview', 'approved', 'suspended' or 'rejected'string (values: developer, administrator): The role initiating this status change. Can be either 'developer' or 'administrator' (default)string: The reason for this status changeOutput schema unknown
openchannel_market.custom_gateway.payment.ownershipId.post({
"ownershipId": "",
"amount": 0
}, context)
object
string: The id of the ownership record involved in this transactioninteger: The total amount paid in centsinteger: The date (in milliseconds) of when this payment was madeinteger: The fee (in cents) paid to a payment processors or third parties to process this payment. Default is 0.integer: The amount (in cents) paid to the marketplace owner as a commission for the purchase of this app. Defaults based on the commission amount configured for this marketplace.integer: The amount (in cents) paid to the owner of the app. Defaults based on the commission amount configured for this marketplace.string: A custom JSON object to attach to this transactionOutput schema unknown
openchannel_market.custom_gateway.refund.ownershipId.post({
"ownershipId": "",
"amount": 0
}, context)
object
string: The id of the ownership record involved in this transactioninteger: The total amount refunded in centsinteger: The date (in milliseconds) of when this refund was madeinteger: The fee (in cents) recovered from a payment processor or third party to process this payment. The default value is 0integer: The amount (in cents) recovered from the marketplace owner as a commission refund for the purchase of this appinteger: The amount (in cents) recovered from the owner of the appstring: A custom JSON object to attach to this transactionOutput schema unknown
openchannel_market.developerAccounts.get({}, context)
object
string: A query document. Example: {'name':'NASA'} matches all the developerAccounts that have the name 'NASA'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
Removes the developer account
openchannel_market.developerAccounts.developerAccountId.delete({
"developerAccountId": ""
}, context)
object
string: The id of the developer account to be updatedOutput schema unknown
Returns a single developer account
openchannel_market.developerAccounts.developerAccountId.get({
"developerAccountId": ""
}, context)
object
string: The id of the developer account to be locatedOutput schema unknown
Updates the developer account fields
openchannel_market.developerAccounts.developerAccountId.patch({
"developerAccountId": "",
"developerId": ""
}, context)
object
string: The id of the developer account to be updatedstring: The id of the developer that this account belongs tostring: The contact email addressstring: The name for the accountstring: A custom JSON object that you can create and attach to this recordOutput schema unknown
Updates the developer account or adds the developer account if it doesn't exist
openchannel_market.developerAccounts.developerAccountId.post({
"developerAccountId": "",
"developerId": ""
}, context)
object
string: The id of the developer account to be updatedstring: The id of the developer that this account belongs tostring: The contact email addressstring: The name for the accountstring: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.developers.get({}, context)
object
string: A query document. Example: {'name':'John'} matches all the developers that have the name 'John'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
Removes a single developer
openchannel_market.developers.developerId.delete({
"developerId": ""
}, context)
object
string: The id of the developer to be removedOutput schema unknown
Returns a single developer
openchannel_market.developers.developerId.get({
"developerId": ""
}, context)
object
string: The id of the developer to be locatedOutput schema unknown
Updates the developer fields
openchannel_market.developers.developerId.patch({
"developerId": ""
}, context)
object
string: The id of the developer to be locatedstring: The type for this developerstring: The developer's emailstring: The developer's usernamestring: The developer's namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
Updates the developer record or adds the developer if it doesn't exist
openchannel_market.developers.developerId.post({
"developerId": ""
}, context)
object
string: The id of the developer to be locatedstring: The type for this developerstring: The developer's emailstring: The developer's usernamestring: The developer's namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.events.eventId.get({
"eventId": ""
}, context)
object
string: The id of the eventOutput schema unknown
Returns a paginated list of files
openchannel_market.files.get({}, context)
object
string: A query document. Example: {'name':'file.txt'} matches all the files that have the name 'file.txt'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
openchannel_market.files.post({
"file": ""
}, context)
object
boolean: If true, this file will be protected as a private file and require the generation of a signed URL in order to download using the Download File API. The default is false.string: A comma separated list of hashes to return in order to verify file integrity.string: The file to be uploadedOutput schema unknown
Get the details for a file.
openchannel_market.files.byIdOrUrl.get({
"fileIdOrUrl": ""
}, context)
object
string: The fileId or fileUrl of the file to be returnedOutput schema unknown
A signed URL for downloading a private file can be returned by providing the fileId.
openchannel_market.files.download.get({
"fileId": ""
}, context)
object
string: The URL of the file to be uploadedinteger: The number of seconds that this signed URL should be valid for. The default is 60.Output schema unknown
openchannel_market.files.url.post({
"url": ""
}, context)
object
string: The URL of the file to be uploadedboolean: If true, this file will be protected as a private file and require the generation of a signed URL in order to download using the Download File API. The default is false.Output schema unknown
Returns the current marketplace
openchannel_market.markets.this.get(null, context)
This action has no parameters
Output schema unknown
openchannel_market.ownership.get({}, context)
object
string: A query document. Example: {'userId':'12'} matches all the ownership records that have the userId '12'.string: A sort document. Example: {'date':1} sorts the results by date in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
openchannel_market.ownership.install.post({
"appId": "",
"userId": ""
}, context)
object
string: The id of the App being ownedstring: The id of the User requesting to own the Appstring: The id of the model associated with this ownership requeststring: A custom model that will override the app's default model for this installstring: A custom JSON object to attach to this ownership recordOutput schema unknown
openchannel_market.ownership.uninstall.ownershipId.post({
"ownershipId": "",
"userId": ""
}, context)
object
string: The id of the ownership to be unintalledstring: The id of the User requesting to uninstall the Appboolean: True if this app will require payment to be re-installed. Default is falsestring: A custom JSON object to attach to this ownership recordOutput schema unknown
openchannel_market.ownership.ownershipId.get({
"ownershipId": ""
}, context)
object
string: The id belonging to the ownership recordOutput schema unknown
openchannel_market.ownership.ownershipId.patch({
"ownershipId": ""
}, context)
object
string: The id of the ownership to be updatedstring: Custom JSON object that will be attached to this ownership recordinteger: The date (in millis) of when this app ownership expiresOutput schema unknown
openchannel_market.ownership.ownershipId.post({
"ownershipId": ""
}, context)
object
string: The id of the ownership to be updatedstring: Custom JSON object that will be attached to this ownership recordinteger: The date (in millis) of when this app ownership expiresOutput schema unknown
Removes permission that allows the app to access this user's data
openchannel_market.permission.apps.appId.delete({
"appId": "",
"userId": ""
}, context)
object
string: The id of the appstring: The id of the userOutput schema unknown
Returns permission that allows the app to access this user's data
openchannel_market.permission.apps.appId.get({
"appId": "",
"userId": ""
}, context)
object
string: The id of the appstring: The id of the userOutput schema unknown
Adds permission to allow the app to access this user's data
openchannel_market.permission.apps.appId.post({
"appId": "",
"userId": ""
}, context)
object
string: The id of the appstring: The id of the userinteger: The time (in milliseconds) of when the user agreed to the access requeststring: The ip address of the user agreeing to the access requestOutput schema unknown
openchannel_market.reviews.get({}, context)
object
string: A query document. Example: {'rating': 500} matches all the reviews that have a rating of 500.string: A sort document. Example: {'rating':1} sorts the results by rating in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
openchannel_market.reviews.post({
"appId": "",
"userId": "",
"headline": "",
"rating": 0,
"description": ""
}, context)
object
string: The id of the App that will own this reviewstring: The id of the User that is posting this reviewstring: The id of the User account that is posting this reviewstring: The review's headline. Limited to 50 characters.integer: The rating given within this review. The rating is represented as an integer between 0 and 500 (0 - 5 stars)string: The review's description. Limited to 2000 characters.string: The type for this reviewboolean: True if a review can be created only by a user that has owned the app. The default is True.boolean: True if the review should be automatically approved. The default is False.string: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.reviews.reviewId.delete({
"reviewId": "",
"userId": ""
}, context)
object
string: The id of the Review to be updatedstring: The id of the User that is removing this reviewstring: The id of the User account that is emoving this reviewOutput schema unknown
Find a Review within a particular App and marketplace
openchannel_market.reviews.reviewId.get({
"reviewId": ""
}, context)
object
string: The id of the review to be locatedOutput schema unknown
openchannel_market.reviews.reviewId.patch({
"reviewId": "",
"userId": ""
}, context)
object
string: The id of the Review to be updatedstring: The id of the User that is updating this reviewstring: The id of the User account that is posting this reviewstring: The review's headline. Limited to 50 characters.integer: The rating given within this review. The rating is represented as an integer between 0 and 500 (0 - 5 stars)string: The review's description. Limited to 2000 characters.string: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.reviews.reviewId.post({
"reviewId": "",
"userId": "",
"userAccountId": "",
"headline": "",
"rating": 0,
"description": ""
}, context)
object
string: The id of the Review to be updatedstring: The id of the User that is updating this reviewstring: The id of the User account that is posting this reviewstring: The review's headline. Limited to 50 characters.integer: The rating given within this review. The rating is represented as an integer between 0 and 500 (0 - 5 stars)string: The review's description. Limited to 2000 characters.string: A custom JSON object that you can create and attach to this recordOutput schema unknown
increment a statistics field
openchannel_market.stats.increment.field.post({
"field": "",
"appId": ""
}, context)
object
string: The field to be incrementedstring: The id of the app associated with this statistic valuestring: The id of the user that is performing the actioninteger: The increment amount. Default is 1 if no value is provided.integer: The date (in millis) for when this increment occurred. The default is the current date if no value is provided.Output schema unknown
Return a timeseries nested array containing date and value. Example: [[1406520000000,2],[1406606400000,34],[1406692800000,245],...]
openchannel_market.stats.series.period.fields.get({
"period": "",
"fields": ""
}, context)
object
string (values: day, month): The period for the series (day or month)string: The field to be graphed. This also be a comma separated list of fields and the result will be a single timeseries containing the sum of all fields.integer: The start date for this series (in millis)integer: The end date for this series (in millis)string: A query document. Example: {'developerId': '112'} matches all the apps that have the developer with id 112array
array
objectReturns the total number of events for a particular field.
openchannel_market.stats.total.get({
"fields": ""
}, context)
object
string: A comma seperated list of all the fields to be returned in the total (available by default: dislikes, likes, reviews, totalSales, developerSales, marketplaceSales, downloads, ownerships, views)string: A query document. Example: {'developerId': '112'} matches all the apps that have the developer with id 112integer: The start date for this total (in millis)integer: The end date for this total (in millis)openchannel_market.stripe_gateway.developer.developerId.accounts.get({
"developerId": ""
}, context)
object
string: The id of the developer connecting their Stripe accountOutput schema unknown
openchannel_market.stripe_gateway.developer.developerId.accounts.post({
"developerId": "",
"redirectUrl": ""
}, context)
object
string: The id of the developer connecting their Stripe accountstring: The URL to redirect this developer after they have connected their Stripe accountOutput schema unknown
openchannel_market.stripe_gateway.developer.developerId.accounts.stripeId.delete({
"developerId": "",
"stripeId": ""
}, context)
object
string: The id of the developer disconnecting their Stripe accountstring: The id of the stripe account to disconnectOutput schema unknown
openchannel_market.stripe_gateway.user.userId.cards.get({
"userId": ""
}, context)
object
string: The id of the user requesting their credit cardsOutput schema unknown
openchannel_market.stripe_gateway.user.userId.cards.post({
"userId": "",
"token": ""
}, context)
object
string: The id of the user adding their credit cardstring: The Stripe token returned by the Stripe.js Stripe.card.createToken callboolean: Set to true if this should be set to be the default credit cardOutput schema unknown
Removes a credit card for a user
openchannel_market.stripe_gateway.user.userId.cards.cardId.delete({
"userId": "",
"cardId": ""
}, context)
object
string: The id of the user removing their credit cardstring: The id of the credit card to removeOutput schema unknown
openchannel_market.stripe_gateway.user.userId.cards.cardId.post({
"userId": "",
"cardId": ""
}, context)
object
string: The id of the user adding their credit cardstring: The id of the card to be updatedboolean: Set to true if this should be set to be the default credit cardstring: The card holder's citystring: The card holder's countrystring: The card holder's street addressstring: The card holder's street addressstring: The card holder's city state/provincestring: The card holder's zip/postal codeOutput schema unknown
openchannel_market.transactions.get({}, context)
object
string: A query document. Example: {'userId':'1'} matches all the transactions that have the userId '1'.string: A sort document. Example: {'date':1} sorts the results by total in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
openchannel_market.transactions.transactionId.delete({
"transactionId": ""
}, context)
object
string: The id of the transaction to be deletedOutput schema unknown
openchannel_market.transactions.transactionId.get({
"transactionId": ""
}, context)
object
string: The id of the transaction to returnOutput schema unknown
openchannel_market.transactions.transactionId.post({
"transactionId": ""
}, context)
object
string: The id of the transaction to be updatedstring: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.userAccounts.get({}, context)
object
string: A query document. Example: {'name':'NASA'} matches all the userAccounts that have the name 'NASA'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
Removes the user account
openchannel_market.userAccounts.userAccountId.delete({
"userAccountId": ""
}, context)
object
string: The id of the user account to be removedOutput schema unknown
Returns a single user account
openchannel_market.userAccounts.userAccountId.get({
"userAccountId": ""
}, context)
object
string: The id of the user account to be locatedOutput schema unknown
Updates the user account fields
openchannel_market.userAccounts.userAccountId.patch({
"userAccountId": "",
"userId": ""
}, context)
object
string: The id of the user account to be updatedstring: The Id of the user that this account belongs tostring: The contact email addressstring: The user account namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
Updates the user account or adds the user account if it doesn't exist
openchannel_market.userAccounts.userAccountId.post({
"userAccountId": "",
"userId": ""
}, context)
object
string: The id of the user account to be updatedstring: The Id of the user that this account belongs tostring: The contact email addressstring: The user account namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
openchannel_market.users.get({}, context)
object
string: A query document. Example: {'name':'John'} matches all the users that have the name 'John'string: A sort document. Example: {'name':1} sorts the results by name in ascending orderinteger: The result set page number to be returnedinteger: The maximum number of results to return per pageOutput schema unknown
openchannel_market.users.userId.delete({
"userId": ""
}, context)
object
string: The id of the user to be removedOutput schema unknown
openchannel_market.users.userId.get({
"userId": ""
}, context)
object
string: The id of the user to be locatedOutput schema unknown
Updates user fields
openchannel_market.users.userId.patch({
"userId": ""
}, context)
object
string: The id of the user to be updatedstring: The type for this userstring: The user's emailstring: The user's usernamestring: The user's namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
Updates a single user or adds the user if they don't exist
openchannel_market.users.userId.post({
"userId": ""
}, context)
object
string: The id of the user to be updatedstring: The type for this userstring: The user's emailstring: The user's usernamestring: The user's namestring: A custom JSON object that you can create and attach to this recordOutput schema unknown
object
array: The approved access restrictions for this app
stringstring: The id of the app that owns this access keyinteger: The time (in milliseconds) of when the user agreed to the access requeststring: The ip address of the user agreeing to the access requestboolean: True if this access is up to date with the current version of the appstring: The id for this userobject: The connected Stripe account for a developer
string: The name of the Stripe accountstring: The country for this Stripe accountstring: The default currency for this Stripe accountstring: The id of the Stripe accountobject: A developer's connected Stripe accounts
array: An array of connected Stripe accounts
string: The id of the developerobject: An app
array: A custom defined list of access requirements
stringstring: The id of this appobject: A custom defined list of app attributesinteger: The date (in millis) that this app was createdobject: A custom JSON object that you can create and attach to this recordstring: The id of the developer that owns this appboolean: True if this is the live version of the appinteger: The date (in millis) that this app was last modifiedarray: The models that describes the cost and pricing for this app
string: The name of this appinteger: A random number that changes hourly and is used for achieving a random sort order when displaying appsinteger: The average review rating for this app. Reviews are rated from 100 (one star) to 500 (five star)integer: The number of approved reviews for this app.array: URL safe aliases that can be used to identify this app even after name changes. The current alias is always at position 0.
stringobject: A field containing summary stats about the app and is specially designed to allow apps to be sorted by popularityinteger: The date (in millis) that this app was submitted for approvalstring: The type for this appinteger: The version number for this appobject: Pages of app results
integer: The total number of resultsarray: An array of apps for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: The totals for the app
object: An AppVersion
array: A custom defined list of access requirements
stringstring: The id of this appobject: A custom defined list of app attributesinteger: The date (in millis) that this app was createdobject: A custom JSON object that you can create and attach to this recordstring: The id of the developer that owns this appboolean: True if this is the latest version of this appboolean: True if this is the live version of the appinteger: The date (in millis) that this app was last modifiedarray: The models that describes the cost and pricing for this app
string: The name of this appinteger: The average review rating for this app. Reviews are rated from 100 (one star) to 500 (five star)integer: The number of approved reviews for this app.array: URL safe aliases that can be used to identify this app even after name changes. The current alias is always at position 0.
stringstring: The type for this appinteger: The version number for this appobject
string: The id of the app involved in this actioninteger: The date (in millis) of when this action was performedobject: An app attribute
string: The name of this attributestring (values: text, select, multi): The type of this attributestring: A comma seperated list of values allowed for this attributeobject
string: The card holder's citystring: The card holder's countrystring: The card holder's street addressstring: The card holder's street addressstring: The card holder's city state/provincestring: The card holder's zip/postal codestring: The brand of the credit card. Example: Visastring: The id for this credit cardinteger: The two digit expiration monthinteger: The four digit expiration yearboolean: True if this is the default credit cardstring: The last 4 digits of the credit card numberstring: The card holder's full nameobject: A User's credit card details
array: An array of credit cards added by this user
string: The id of this userobject: The category supported by this category group
string: The description of this categorystring: The name of this categoryobject: The category groups supported by this marketplace
array: The categories supported by this category group
string: The name of this category groupobject: The totals for the field
integer: The totals for the fieldobject: A Developer
integer: The time (in millis) of when this developer was createdobject: A custom JSON object that you can create and attach to this recordstring: The id of this developerstring: The developer's emailstring: The developer's namestring: The type for this developerobject: A Developer Account
object: A custom JSON object that you can create and attach to this recordstring: The id of this developer accountstring: The id of the developer that this account belongs tostring: The contact email addressstring: The name for the accountobject: Pages of developerAccount results
integer: The total number of resultsarray: An array of developerAccounts for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: Pages of developer results
integer: The total number of resultsarray: An array of developers for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject
string: The id of the developer connecting their Stripe accountinteger: The time (in milliseconds) when this URL expiresstring: The URL that this developer can use to connect their Stripe accountobject
integer: The date (in millis) of when this event occurredstring: A description of the eventstring: The id of the eventstring (values: app.submitted, app.approved, app.suspended, app.unsuspended, app.rejected, app.inReview, app.installed, app.uninstalled, review.created, review.updated, review.approved, review.spam, review.removed, user.created, user.updated, user.removed, user.invalidPaymentDetails, user.paymentDetailsRequired, developer.created, developer.updated, developer.removed, developer.paymentDetailsRequired, permission.added, permission.removed, payment.complete, payment.refunded, payment.required, ownership.expired): The current event typestring: The id of the marketplace that owns this eventobject: The file ids of the uploaded file
string: The internet media type of the filestring: The id of the uploaded filestring: The path where the file can be located.string (values: PASSED, FAILED): The mime type validation check to see if the extension of this file matches it's content. Can be PASSED or FAILEDstring: The name of the uploaded fileinteger: The number of bytes in the uploaded fileinteger: The time in milliseconds when the file was uploadedobject: The signed URL for downloading a private file
string: The signed URL for downloading a private fileobject: Pages of file results
integer: The total number of resultsarray: An array of users for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: The virus found within this file
string: The name of the filestring: The name of the virusobject: The hashes requested for the file.
string: The MD5 hash for this uploaded file.string: The SHA-1 hash for this uploaded file.string: The SHA-256 hash for this uploaded file.object: A marketplace
array: The different app attributes supported by this marketplace
array: The category groups supported by this marketplace
string: The id of this marketplacestring: The URL template for previewing apps on this marketplacestring: The URL template for viewing apps on this marketplaceobject: Pages of marketplace results
integer: The total number of resultsarray: An array of markets for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: The model that describes the cost and pricing for apps
string (values: daily, weekly, monthly, annually): The billingPeriod along with the billingPeriodUnit make up the time between billing cyclesinteger: The billingPeriod along with the billingPeriodUnit make up the time between billing cyclesinteger: The marketplace commission applied to this app's model multiplied by 100 to include two digits for fractions of a percentstring: The ISO 4217 currency code for this priceobject: A custom JSON object that you can create and attach to this recordstring (values: developer, marketplace): The payee that will be paying for any payment processing feesstring (values: single): The license model type. Single allows a purchase to a single user or organizationstring: The id that uniquely identifies this modelinteger: The price of this app in centsstring (values: usage, seat): The pricing model subtypeinteger: The maximum number of free trial days availablestring (values: free, single, recurring): The pricing model type. Free has no cost, single has a one time purchase cost and recurring requires a monthly subscriptionobject
string: The id of the app that is ownedobject: A custom JSON object that you can create and attach to this recordinteger: The date (in millis) of when this app was ownedstring: The id of the developer for this appinteger: The date (in millis) of when this app ownership expiresstring: The id of this ownershipstring (values: pending, active, uninstalled, cancelled): The current ownership status for this appstring (values: full, subscription, trial): The current ownership type for this appinteger: The date (in millis) of when this app was uninstalledstring: The id of the user that owns this appobject: Pages of ownership results
integer: The total number of resultsarray: An array of ownership records for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: Details of the live version of this app
object: Profanity found in this review
integer: The ending location of the profanityinteger: The starting location of the profanitystring: The profane wordobject: Resticts users from accessing this app
object: A custom object containing fields paired with an array value of restrictions. Restricts the users that may own this app. Example: {'country':['Canada','Mexico']}object: A custom object containing fields paired with an array value of restrictions. Restricts the users that may view this app. Example: {'country':['Canada','Mexico']}object: The revenue generated by this app
integer: The total revenue generated for the developer by this app in centsinteger: The total revenue generated by this app in centsobject: A Review
string: The Id of the App that owns this reviewstring: A custom JSON object that you can create and attach to this recordstring: The review's description. Limited to 2000 characters.string: The review's headline. Limited to 50 characters.integer: The rating given within this review. The rating is represented as an integer between 100 and 500 (1 - 5 stars)integer: The date (in millis) this Review was postedstring: The id for this review.string: The type for this reviewstring: The id of the user account that posted this reviewstring: The id of the User that posted this reviewobject: Pages of review results
integer: The total number of resultsarray: An array of reviews for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject
integer: The date (in millis) of when this action was performedstring: The id of the review involved in this actionobject: Pages of search results
integer: The total number of resultsarray: An array of results for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: The statistic value
integer: The statistic valueobject: The current status of this review
array: A list of profanity found in this review
string (values: profanity, spam): Text describing the reason for the current statusstring (values: pending, spam, flagged, approved): The current status valueobject: The total number of events for a particular field
object: A transaction for an app initiated by a user
integer: The total amount paid in centsstring: The id of the app involved with this transactionobject: A custom JSON object that you can create and attach to this recordinteger: The date (in millis) of when this transaction occurredinteger: The total amount paid to the developer in centsstring: The id of the developer involved with this transactioninteger: The total amount paid to payment processing fees in centsinteger: The total amount paid to the marketplace owner in centsstring: The id for the ownership associated with this transactionstring: The id for this transactionstring (values: payment, refund): The type for this transactionstring: The id of the user making the transactionobject: Pages of transaction results
integer: The total number of resultsarray: An array of paymnets for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: A User
integer: The date (in millis) of when this user was createdobject: A custom JSON object that you can create and attach to this recordstring: The user's emailstring: The user's namestring: The type for this userstring: The id of this userobject: A User Account
object: A custom JSON object that you can create and attach to this recordstring: The contact email addressstring: The name for the accountstring: The id of this user accountstring: The id of this user that this account belongs toobject: Pages of userAccount results
integer: The total number of resultsarray: An array of userAccounts for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: Pages of user results
integer: The total number of resultsarray: An array of users for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: Pages of AppVersion results
integer: The total number of resultsarray: An array of apps for the current page
integer: The current page number for this result setinteger: The total number of pages available for this result setobject: The virus scan results for this file
integer: The date (in milliseconds) when this file finished it's scanarray: The list of viruses found in this file
integer: The date (in milliseconds) when this file started it's scanstring: The status of this scan. Can be NOT_SCANNED, CLEAN or DIRTYFAQs
DataFire integration for OpenChannel Market API
We found that @datafire/openchannel_market demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.