[TOC]

# Introduction {#Introduction}

This local YumaPro Doxygen Browser
contains Server H file doxygen documentation for this module
or bundle directory, and all installed SDK H files.

These libraries are different depending on the SDK package installed.
If a directory is only available in the full SDK version then the text (SDK)
will be added to the line to indicate it is not available in the YumaPro SDK Basic package

The doxygen browser also contains documentation for each server library:

 - [YANG Library](@ref yang-library) :
  The modules in this local 'src' directory.
 - [libyumapro_ncx](@ref ncxlib) :
   Network Configuration Extension Library.
   This is a core library shared by all YumaPro applications.
 - [libyumapro_agt](@ref agtlib) :
   Agent. Contains most server implementation files.
 - [libyumapro_ycontrol](@ref ycontrollib) (SDK) :
   YControl protocol. Allows the server to communicate with subsystems.
 - [libyumapro_db-api](@ref dbapilib) (SDK) :
   Subsystem support for the DB-API service (uses YControl for transport).
 - [libyumapro_sil-sa](@ref silsalib) (SDK) :
   Subsystem support for the SIL-SA service (uses YControl for transport).
 .

The H files documented in all the server modules have been converted to support doxygen output.
These files are usually installed in the /usr/include/yumapro directory.

  - /usr/include/yumapro/agt
  - /usr/include/yumapro/db-api   (SDK)
  - /usr/include/yumapro/ncx
  - /usr/include/yumapro/sil-sa   (SDK)
  - /usr/include/yumapro/ycontrol (SDK)
  .

## Modules Page {#modulespage}

Start on the [Modules](modules.html) page.

This section organizes the libraries by functionality.

Use the "detail level" in the upper right corner to
add or remove levels from the index tree. Level 2 is suggested
to start your search.

The most useful customer facing APIs can be found in a few modules:
 - [NCX Utilities](@ref ncxutil) : Low Level Utilities available to all customer callbacks
 - [Agent Utilities](@ref agtlib-util) : High Level Utilities available to SIL and SIL-SA callbacks
 - [DB-API Utilities](@ref dbapilib-core) (SDK) : Subsystem access to YANG data in the server
 .

## Complete Documentation Set {#completeapis}

All modules are documented, including internal modules that have no customer facing APIs.

Just because a function is documented in doxygen does not mean that YumaWorks will
support its usage outside its intended internal usage.

The internal documentation is provided to help developers understand the code better,
even if they are not supposed to use these functions directly from callback code.


## Developer Manuals {#devmanuals}

The [YumaPro Documentation Set](https://www.yumaworks.com/support/download-documentation/)
lists all the user and developer manuals available for download or online viewing.

The following manuals are the most useful for YANG instrumentation development:

 - [netconfd-pro User Manual](https://www.yumaworks.com/pub/docs/latest/html/netconfd/yumapro-netconfd-manual.xhtml) :
   This manual explains server operation and configuration. All the built-in operations and notifications
   are explained.
 - [YumaPro Developer Manual](https://www.yumaworks.com/pub/docs/latest/html/dev/yumapro-dev-manual.xhtml) :
   This is the main developer documentation. Start here to understand how the server works,
   and how client requests are processed.
 - [YumaPro API Quick Start Guide](https://www.yumaworks.com/pub/docs/latest/html/api-quickstart/yumapro-api-quickstart-guide.xhtml):
   This document focuses on the instrumentation code that you will provide. It contains examples
   and details for each type of callback function.
 - [YumaPro Server yp-system API Guide](https://www.yumaworks.com/pub/docs/latest/html/ypsystem/yumapro-ypsystem-api-guide.xhtml) :
   This document explains how to create a yp-system to easily integrate your system with the server.
   Global APIs (not associated with any YANG module) are usually defined in a yp-system library.


## Developer FAQs {#devfaqs}

The [YumaPro Knowledge Base](https://yumaworks.freshdesk.com/support/home)
contains 100s of articles to help you learn the APIs in the toolkit.

The [Developer Getting Started](https://yumaworks.freshdesk.com/support/solutions/folders/1000229490) page
is a good place to start learning the basics of callback code development.

## User Forum

The [YumaPro User Forum](https://www.yumaworks.com/support/yumapro-user-forum/) is available
for anyone to ask questions and get community help with YumaPro server instrumentation development.


## Technical Support {#tecsupport}

Use the [YumaPro Support Desk](https://yumaworks.freshdesk.com/support/tickets/new) to
submit a new ticket to the technical support team. This portal is only available to full SDK users,
not for yumapro-sdk-basic users.


## Useful Links

These WEB pages may help you find more information on NETCONF and YANG.

 - [Netconf Central](http://www.netconfcentral.org) : Contains links to standards, module reports
 - [YANG Catalog](https://yangcatalog.org/) : Information about YANG modules from many vendors and standards
   organizations.
 - [YANG Repo](https://github.com/YangModels/yang) : Contains many downloadable YANG modules.
 - [OpenConfig YANG Modules](https://github.com/openconfig/public) : Download OpenConfig YANG modules.
 - [Broadband Forum](https://github.com/BroadbandForum/yang) : Download BBF YANG modules.
 - [OpenROADM](https://github.com/OpenROADM/OpenROADM_MSA_Public) : Download OpenROADM YANG modules.
 - [YANG](https://datatracker.ietf.org/doc/html/rfc7950) : YANG language RFC.
 - [NETCONF](https://datatracker.ietf.org/doc/html/rfc6241) : NETCONF protocol RFC.
 - [RESTCONF](https://datatracker.ietf.org/doc/html/rfc8040) : RESTCONF protocol RFC.
 - [XPath](https://www.w3.org/TR/1999/REC-xpath-19991116/) : XML Path Language 1.0.
 - [XML](https://www.w3.org/TR/xml/) : Extensible Markup Language
 - [JSON for YANG](https://datatracker.ietf.org/doc/html/rfc7951) : JSON Encoding of Data Modeled in YANG.
 .
