Documentation
AcademyCommunitySign In
  • 👋Overview
  • 💙Platform Features
  • Getting started
    • 🚪Signing up & Logging in
      • 👤Profile Settings
    • 🎛️App Management
    • ✴️Templates to Start With
      • Basic Template (Blank app)
      • CRM Template
    • 👨‍🎓Learning Directual
      • 👨‍🏫Webinars
  • Data base
    • Data Structures
      • System Structures
    • Data Types
      • Markdown Cheat Sheet
      • Indexing Fields
      • Formatting Date/Time
    • Directual Query Language (DQL)
    • Import and Export
      • Import API
    • File Storage
      • API for File Storage
  • API and integraions
    • API-Endpoints
      • Advanced techniques for GET and POST requesting
        • Paging for GET-requests
        • Dynamic sorting for GET-requests
        • Custom filtering parameters for GET-requests
        • Advanced filtering for GET-requests
        • Formatting response for GET-request
        • Fields validation for POST-requests
        • Synchronic scenarios for POST-requests
        • Cross-Origin Resource Sharing CORS
      • API testing and debugging
      • Coding mode (raw mode) in filters
      • Swagger specification
    • Webhooks
    • Authentication API
      • Login/password
      • OpenID connect
      • Facebook oAuth
      • Google oAuth
    • Security Features
    • Other Integrations
      • OpenAI
      • Integration Hubs
        • Zapier
      • Telegram
        • Telegram: Advanced Techniques
      • Email
        • SMTP
        • Gmail
      • Twilio SMS
      • Airtable
      • Coupler.io
      • Other No-Code Tools
        • Bubble.io
          • Authorization
          • Displaying Data from Directual on Bubble
        • Adalo
        • UI bakery
        • Tilda
        • AppGyver
  • App interface
    • Web-App Builder basics
    • Web-App Settings
      • General web-app settings
      • Main menu
      • Creating a logotype
      • Web-App color scheme
      • Web-app typography
      • White Labeling
      • Web-App Icon
      • Custom Domain
      • Custom code
    • Setting Up Page Layout
      • Subpages and URL Parameters
    • Components
      • Multistep Form
      • Cards
      • Table
      • Kanban
      • Chart
      • Markdown text
      • HTML code
      • Hint
      • Link Button
      • Video
      • Form (outdated)
    • Embedding Pages
  • Scenarios
    • Understanding Directual Scenarios
      • Directual Event Model
    • Event-Based Triggers
    • Scheduled Triggers
      • Cron Format
    • Synchronous Scenarios
    • Editing Scenarios
      • System Steps
        • Start step
        • Delay step
        • Comment step
        • Catch error step
        • Link scenario step
        • Exit step
      • Action steps
        • Edit object step
        • Create object step
        • Search objects step
        • JSON step
        • Delete object step
        • Run report step
        • Generate document step
        • JS SDK step
      • Condition steps
        • Condition step
        • A/B test step
        • JS SDK condition step
      • Integration steps
        • HTTP-request step
        • Zapier step
        • Telegram step
        • API response
        • Email step
        • SQL-request step
        • Queue step
    • Using Variables
      • Global Variables
      • Context Variables (scenario parameters)
    • Testing and Debugging
    • System Scenarios
    • Advanced Scenario Settings
  • Template system
    • Templating Principles
      • Templating Techniques for Scenarios
      • Templating Techniques for Web-pages
    • Coding Mode (evaluating as a JS-expression)
    • Comparison Component
      • Regular Expressions
    • Tips for Dealing with Data
  • Telegram
    • Telegram
  • Plugins
    • 🔌Using Plugins
      • Scenario Steps Plugins
      • Web Plugins
      • User Authentication Plugins (Not Web3)
        • TMA (Telegram Mini App)
        • Google OAuth Plugin
        • Facebook OAuth Plugin
        • Open ID Auth Plugin
      • Blockchain (Web3)
        • TON (The Open Network)
        • Polygon
        • Ethereum
        • NEAR Protocol
        • NFT and Smart-Contracts
        • MetaMask Wallet
        • WalletConnect
      • WebSockets (Socket.IO)
    • 🪚Developing Plugins
      • Developing Scenario Plugins
      • Developing Web-plugins
        • Example: Using Chart.js in Directual
        • Example: Building Simple Form
        • Example: TON plugin
  • Teams
    • Teams
    • Sandbox Apps
  • JavaScript SDK
    • Directual + JavaScript SDK: The Basics
    • Internal $D Methods
    • Using Google Sheets
    • JS SDK: Examples
  • Reports
    • Reports
  • App life cycle management
    • App Versions
  • Directual 💙 React JS
    • Directual + React JS
  • Pricing and billing
    • 💳How Billing Works
    • 🎁Promo Codes
    • Pricing Plans for Apps
    • Team Pricing Plans
    • How we count requests and operations
    • On-Demand Resource Consumption
    • 🤝Affiliate Program
  • Hire a Directual expert
    • 🏆Certification
    • 🤝Matching with Experts
    • 🏦Escrow service
  • Security and stability
    • 🛡️Public Cloud
    • Platform Architecture
  • Support
    • 📬Contact Directual
  • Directual step-by-step
    • Public Development Roadmap
      • Step 0: Planning App Architecture
      • Step 1: Requesting Features
      • Step 2: Approving Features
      • Step 3. Upvoting Features
      • Step 4. Watching Features
    • Weather Forecast App
    • Web3 Marketplace on Polygon
    • Transferring NFT
Powered by GitBook
On this page
  • Step 1.1: Create an App and Configure Basic Data Structures
  • Step 1.2: Create a Request Form
  • Step 1.3: Process New Requests

Was this helpful?

  1. Directual step-by-step
  2. Public Development Roadmap

Step 1: Requesting Features

Step duration ~18 min

PreviousStep 0: Planning App ArchitectureNextStep 2: Approving Features

Last updated 1 year ago

Was this helpful?

Step 1.1: Create an App and Configure Basic Data Structures

First, we . The system name must be unique because it determines the URL address (SYSNAME.directual.app).

Features (system name Features), main system structure.

Field system name

Field name

Field type

id

id

default id field

title

Title

string

description

Description

markdown (string)

date_requested

Date requested

date

user_id

Who requested

link to App users (WebUser)

tags

Tags

arrayLink to Tags (tags)

request_status

Request status

link to Request status (req_status)

development_status

Development status

link to Development status (dev_status)

type

Type

link to Type (type)

Additional directory data structures:

Tags (tags)

Field system name

Field name

Field type

id

id

default id field

Type (type)

Field system name

Field name

Field type

id

id

default id field

Request Status (req_status)

Field system name

Field name

Field type

id

id

default id field

Development Status (dev_status)

Field system name

Field name

Field type

id

id

default id field

Add Objects:

Structure

Object IDs

Type

bug, feature

Development status

planned, under development, released

Request status

new, approved, declined

Tags

design, integrations, product, etc.

Step 1.2: Create a Request Form

Pay attention to the layer conditions related to the user's session. The default condition, 'id isNotNull,' indicates that the API endpoint is not public. Users need to authorize themselves to access data via this endpoint. We do not recommend removing this condition unless you plan to make your data publicly accessible.

Let's enable both Sign-In and Sign-Up for our app. Click on [ Web Portal Settings ], go to the Security tab, and activate these options:

Here are the steps you should follow:

  1. Enable the quick search option for Tags, which will add a dropdown.

  2. Hide the user_id field from the form.

  3. Rearrange the field order and activate requirements as needed.

Your form is now set up and ready to use. Give it a try!

Step 1.3: Process New Requests

Step

Description

Edit object // Save the date

🟢ON

Edit object // Set the status to new

Saves to {{request_status}} string new

🔴OFF

Send email

—

The is a fundamental part of any app. For our Development Pipeline app, we create the following data structures:

Alright, to add objects (features) via a , the first step is to create an . Head to the API section and click on [ + New API Endpoint ]. Choose the data structure - in this case, 'features.' Set the API endpoint name and description, then click on [ + New Layer ].

Next, let's create a page in the . Click on [ + New Web Page ], complete the form, and then click [ Save ].

"Next, the Form component onto the page, select the API endpoint, and configure the fields as follows:

Enable of the user_id.

New feature requests or bug reports are considered as objects. To handle these objects, we require a with a .

Saves to {{date_requested}} current time, using

Alerts admin that new request has been created. has to be established

Database
Form
API endpoint
Web Page Builder
drag and drop
automatic filling
scenario
real-time trigger
Coding mode
Integration with email
create an app
now expression
Configuring data structure fields
Configuring an API-endpoint
6:05
5:50
5:29