DEVELOPER DOCS

Daleel MRO API

Integrate aviation maintenance intelligence into your systems. Query maintenance manuals, track compliance, and surface safety-critical information with a single API call.

REST API JSON Bearer Auth v1.0

Quick Start

Get up and running in minutes. Follow these three steps to make your first API call.

1

Get Your API Key

Public API: coming soon. The REST API documented here is on our roadmap and not yet generally available. To try Daleel today, use the live product. When the API launches you will generate a key (starting dk_) from the Developer Settings panel.

2

Make Your First Request

Send a POST request to the query endpoint with your maintenance question.

# Ask a maintenance question
curl -X POST https://api.daleel.dee.expert/v1/query \
  -H "Authorization: Bearer dk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "What is the torque spec for CFM56-7B fan blade bolts?",
    "aircraft_type": "B737-800"
  }'
3

Parse the Response

The API returns a structured JSON response with an answer, source citations, safety alerts, and a confidence score. See the Response Format section for details.

Authentication

All API requests require authentication via a Bearer token included in the Authorization header.

Authorization: Bearer dk_your_api_key

API Key Management

API keys can be created, rotated, and revoked from your Daleel MRO dashboard. We recommend the following best practices:

Endpoints

Base URL: https://api.daleel.dee.expert

POST /v1/query

Ask a natural language maintenance question. Returns an AI-generated answer grounded in your uploaded technical documentation.

ParameterTypeDescription
query REQUIREDstringThe maintenance question to answer
aircraft_type optionalstringICAO aircraft type designator (e.g., B737-800)
engine_type optionalstringEngine model (e.g., CFM56-7B)
context optionalstringAdditional context for better answers
curl -X POST https://api.daleel.dee.expert/v1/query \
  -H "Authorization: Bearer dk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "Landing gear retraction check interval for A320",
    "aircraft_type": "A320"
  }'
{
  "success": true,
  "data": {
    "answer": "The landing gear retraction test must be performed every 750 flight hours per AMM 32-30-00...",
    "citations": [
      {
        "source": "AMM 32-30-00",
        "section": "4.2.1",
        "page": 142
      }
    ],
    "safety_alerts": [],
    "confidence": 0.94
  }
}
POST /v1/search

Perform a semantic search across all uploaded maintenance documentation. Returns ranked document chunks matching your query.

ParameterTypeDescription
query REQUIREDstringSearch query
limit optionalintegerNumber of results (default 10, max 50)
doc_type optionalstringFilter by document type: AMM, IPC, SB, AD, CMM
curl -X POST https://api.daleel.dee.expert/v1/search \
  -H "Authorization: Bearer dk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "hydraulic pump seal replacement",
    "limit": 5,
    "doc_type": "CMM"
  }'
{
  "success": true,
  "data": {
    "results": [
      {
        "content": "Remove hydraulic pump assembly per CMM 29-10-01...",
        "source": "CMM 29-10-01",
        "relevance": 0.97
      }
    ],
    "total": 23
  }
}
GET /v1/documents

List all documents uploaded to your organization's knowledge base. Supports pagination and filtering.

ParameterTypeDescription
page optionalintegerPage number (default 1)
per_page optionalintegerResults per page (default 20, max 100)
doc_type optionalstringFilter by document type
curl https://api.daleel.dee.expert/v1/documents?page=1&per_page=10 \
  -H "Authorization: Bearer dk_your_api_key"
{
  "success": true,
  "data": {
    "documents": [
      {
        "id": "doc_8f3a2b1c",
        "name": "B737-800 AMM Rev.42",
        "type": "AMM",
        "pages": 3842,
        "status": "indexed"
      }
    ],
    "total": 47,
    "page": 1
  }
}
POST /v1/documents/upload

Upload a maintenance document (PDF, XML, SGML) for indexing. Documents are processed asynchronously; use the returned document_id to check status.

ParameterTypeDescription
file REQUIREDfileDocument file (max 200MB)
doc_type REQUIREDstringDocument type: AMM, IPC, SB, AD, CMM
aircraft_type optionalstringAssociated aircraft type
curl -X POST https://api.daleel.dee.expert/v1/documents/upload \
  -H "Authorization: Bearer dk_your_api_key" \
  -F "file=@B737-AMM-Rev42.pdf" \
  -F "doc_type=AMM" \
  -F "aircraft_type=B737-800"
{
  "success": true,
  "data": {
    "document_id": "doc_9c4e7d2f",
    "status": "processing",
    "estimated_time": 120
  }
}
GET /v1/compliance/ads

Retrieve Airworthiness Directive compliance status for your fleet. Returns ADs applicable to the specified aircraft type with compliance status tracking.

ParameterTypeDescription
aircraft_type REQUIREDstringICAO aircraft type designator
status optionalstringFilter: open, complied, not_applicable
curl https://api.daleel.dee.expert/v1/compliance/ads?aircraft_type=A320&status=open \
  -H "Authorization: Bearer dk_your_api_key"
{
  "success": true,
  "data": {
    "aircraft_type": "A320",
    "directives": [
      {
        "ad_number": "2024-0156",
        "title": "Wing Spar Inspection",
        "status": "open",
        "compliance_date": "2026-06-15"
      }
    ],
    "total": 12
  }
}
GET /v1/health

Check API service health and current status. This endpoint does not require authentication.

curl https://api.daleel.dee.expert/v1/health
{
  "status": "healthy",
  "version": "1.0.0",
  "uptime": 99.98
}

Response Format

All successful API responses follow a consistent JSON structure. The /v1/query endpoint returns the richest response with answers, citations, safety alerts, and confidence scoring.

{
  "success": true,
  "data": {
    "answer": "The torque specification for CFM56-7B fan blade bolts is 45-50 ft-lbs as per EMM 72-00-00, Section 6.3.2. Apply anti-seize compound before installation.",
    "citations": [
      {
        "source": "EMM 72-00-00",
        "section": "6.3.2",
        "page": 287,
        "relevance": 0.98
      },
      {
        "source": "SB CFM56-72-0834",
        "section": "3.1",
        "page": 12,
        "relevance": 0.91
      }
    ],
    "safety_alerts": [
      {
        "level": "WARNING",
        "message": "Ensure engine is cold before fan blade removal. Refer to safety procedure SP-72-001."
      }
    ],
    "confidence": 0.94
  },
  "meta": {
    "request_id": "req_7f8a9b2c3d4e",
    "processing_time_ms": 832
  }
}
FieldTypeDescription
answerstringAI-generated answer grounded in source documentation
citations[]arraySource references with document, section, page, and relevance
safety_alerts[]arraySafety-critical warnings related to the query
confidencefloatConfidence score from 0.0 to 1.0

Rate Limits

Rate limits are applied per API key. Exceeding your limit returns a 429 Too Many Requests response with a Retry-After header.

Starter

100
requests / minute

Enterprise

Custom
contact sales

SDKs

Official client libraries for popular languages. Install via your preferred package manager.

Python

Async-ready Python client with type hints and Pydantic models.

pip install daleel-mro
# Usage
from daleel import DaleelClient

client = DaleelClient("dk_your_api_key")
result = client.query("Torque spec for CFM56 fan blade bolts")
print(result.answer)
Coming Soon

JavaScript / TypeScript

Fully typed SDK for Node.js and edge runtimes. ESM and CJS support.

npm install @daleel-aero/sdk
// Usage
import { DaleelClient } from '@daleel-aero/sdk';

const client = new DaleelClient('dk_your_api_key');
const result = await client.query('Torque spec for CFM56 fan blade bolts');
console.log(result.answer);
Coming Soon

Error Codes

When an error occurs, the API returns an appropriate HTTP status code and a JSON body with details.

{
  "success": false,
  "error": {
    "code": 400,
    "type": "validation_error",
    "message": "The 'query' field is required."
  }
}
CodeTypeDescription
400validation_errorInvalid or missing request parameters
401authentication_errorMissing or invalid API key
403forbiddenAPI key lacks required permissions
404not_foundRequested resource does not exist
413payload_too_largeRequest body or file exceeds size limit
429rate_limit_exceededToo many requests; retry after the period in Retry-After header
500internal_errorUnexpected server error; contact support if persistent
503service_unavailableService temporarily down for maintenance

Changelog

Track API changes and version history.

v1.0.0
March 2026 | Initial Release
  • Natural language maintenance query endpoint
  • Semantic search across technical documentation
  • Document upload and indexing pipeline
  • Airworthiness Directive compliance tracking
  • Bearer token authentication
  • Rate limiting with tiered plans
  • Comprehensive error handling and response format

Ready to Integrate?

Get your API key today and start building aviation maintenance intelligence into your applications.

Contact Sales