Constrained Application Protocol
Constrained Application Protocol （ CoAP ）は、 RFC 7252で定義されている、制約のあるデバイス向けに特化したインターネットアプリケーションプロトコルである。 「ノード」と呼ばれる制約のあるデバイスのインターネット通信のために作られた。CoAPは、制約のある同じネットワーク（低電力、損失の多いネットワークなど）上のデバイス間、デバイスとインターネット上の一般的なノード、両方がインターネットに参加している異なる制約のあるネットワーク上のデバイス間で使用できるように設計された。 CoAPは、携帯電話網上のSMSなど、他のメカニズムでも使用されている。
CoAPは、 無線センサーネットワークノードなど、リソースに制約のあるインターネットデバイスでの使用を目的としたサービスレイヤプロトコルである。 CoAPは、Webへの統合を簡素化するためにHTTPに簡単に変換できるように設計されている一方で、 マルチキャストサポート、非常に小さいオーバーヘッド、シンプルさなどの特化した要件も満たしている。マルチキャスト、低オーバーヘッド、シンプルさが、従来のインターネットデバイスよりもはるかに少ないメモリと電力で動作する傾向にある組み込み機器であるモノのインターネット （IOT）やマシン・ツー・マシン（M2M）デバイスにとって非常に重要である。したがって、動作効率は非常に重要である。CoAPはUDPまたはUDPアナログをサポートするほとんどの機器で動作可能である。
インターネットエンジニアリングタスクフォース（ IETF ）制約付きRESTful環境ワーキンググループ（ CoRE ）が、このプロトコルの主要な標準化作業を行った。プロトコルをIoTおよびM2Mアプリケーションに適したものにするために、さまざまな新しい機能が追加されている。プロトコルのコアは RFC 7252 で規定されている。重要な拡張機能は、標準化プロセスのさまざまな段階にある。