Create a database with No Code. You automatically will get access to the data in your collection over fully managed and secure https endpoints
CodeMash Database service provides many operations for database management like CRUD operations, schema builder, and data validation.
When you enable a database service in your CodeMash dashboard page we create a new MongoDb database for you. When that is done you are able to create collections using our provided tools in the dashboard. After you create a collection you can start adding records through the dashboard or calling to API endpoints.
Features included in database service:
Collections - just like any database collection.
Taxonomies - special kind of collections used mostly for basic select type data.
Imports - importing records to collections.
Exports - exporting records from collections.
Backups - dumping and restoring collections.
Using SDK
If you decide to use one of our provided SDK, the following code shows how to initialize database service.
var projectId =Guid.Parse("{YOUR_PROJECT_ID}");var apiKey ="{YOUR_SECRET_KEY}";var client =newCodeMashClient(apiKey, projectId);var service =newCodeMashRepository<Person>(client);
Here Person is a class which extends the interface IEntity. The example below shows a class extendingEntityclass which extendsIEntityinterface. The attributeCollectionNameis a helper for a client. It takes one parameter - the name of your collection in CodeMash.
[Collection("persons")]publicclassPerson:Entity{ [Field("name")]publicstring Name { get; set; }}
Here UniqueName is an attribute that is used to set the unique name of a field (the name that is used inside a database). This name can be found in your collection, field details. If this attribute is not used, then your field will be serialized and deserialized as a lowercase property name.
The following are examples of database SDK using different languages and frameworks.
usingSystem;usingCodeMash.Client;usingCodeMash.Repository;usingMongoDB.Driver;namespaceConsoleApplication{ [CollectionName("persons")]publicclassPerson:Entity {publicstring Name { get; set; } }classProgram {staticvoidMain(string[] args) { // 1. Get your Project ID and Secret Keyvar projectId =Guid.Parse("{YOUR_PROJECT_ID}");var apiKey ="{YOUR_SECRET_KEY}"; // 2. Create a general client for API callsvar client =newCodeMashClient(apiKey, projectId); // 3. Create a service objectvar dbService =newCodeMashRepository<Person>(client); // 4. Call an API methodvar filter =Builders<Person>.Filter.Eq(x =>x.Name,"John");var result =dbService.Find(filter); } }}
exportasyncfunctiongetHolidaysOfEmployee(userId) {constfilter=JSON.stringify({ application_user: userId, status:'Approved', });// gets first 100 records - all approved holidays sorted out by start date constresponse=awaitdb.getRecords('holidays',0,100, { start:-1 }, filter);return response;}