misp_client_rs/models/
model_name.rs

1//!
2//! MISP Automation API
3//!
4//!  ### Getting Started  MISP API allows you to query, create, modify data models, such as [Events](https://www.circl.lu/doc/misp/GLOSSARY.html#misp-event), [Objects](https://www.circl.lu/doc/misp/misp-objects/), [Attributes](https://www.circl.lu/doc/misp/GLOSSARY.html#misp-attribute). This is extremly useful for interconnecting MISP with external tools and feeding other systems with threat intel data.  It also lets you perform administrative tasks such as creating users, organisations, altering MISP settings, and much more.  To get an API key there are several options: * **[UI]** Go to [My Profile -> Auth Keys](/auth_keys/index) section and click on `+ Add authentication key`  * **[UI]** As an admin go to the the [Administration -> List Users -> View](/admin/users/view/[id]) page of the user you want to create an auth key for and on the `Auth keys` section click on `+ Add authentication key`  * **[CLI]** Use the following command: `./app/Console/cake user change_authkey [e-mail/user_id]`  * **API** Provided you already have an admin level API key, you can create an API key for another user using the `[POST]/auth_keys/add/{{user_id}}` endpoint.  > **NOTE:** The authentication key will only be displayed once, so take note of it or store it properly in your application secrets.  #### Accept and Content-Type headers  When performing your request, depending on the type of request, you might need to explicitly specify in what content  type you want to get your results. This is done by setting one of the below `Accept` headers:      Accept: application/json     Accept: application/xml  When submitting data in a `POST`, `PUT` or `DELETE` operation you also need to specify in what content-type you encoded the payload.  This is done by setting one of the below `Content-Type` headers:      Content-Type: application/json     Content-Type: application/xml  Example: ``` curl  --header \"Authorization: YOUR_API_KEY\" \\       --header \"Accept: application/json\" \\       --header \"Content-Type: application/json\" https://<misp url>/  ```  > **NOTE**: By appending .json or .xml the content type can also be set without the need for a header.  #### Automation using PyMISP  [PyMISP](https://github.com/MISP/PyMISP) is a Python library to access MISP platforms via their REST [API](https://www.circl.lu/doc/misp/GLOSSARY.html#api). It allows you to fetch events, add or update events/attributes, add or update samples or search for attributes.  ### FAQ * [Dev FAQ](https://www.circl.lu/doc/misp/dev-faq/) * [GitHub project FAQ](https://github.com/MISP/MISP/wiki/Frequently-Asked-Questions) 
5//!
6//! The version of the OpenAPI document: 2.4
7//! 
8//! Generated by: https://openapi-generator.tech
9//! 
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// 
15#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
16pub enum ModelName {
17    #[serde(rename = "AdminSetting")]
18    AdminSetting,
19    #[serde(rename = "Allowedlist")]
20    Allowedlist,
21    #[serde(rename = "AttachmentScan")]
22    AttachmentScan,
23    #[serde(rename = "Attribute")]
24    Attribute,
25    #[serde(rename = "AttributeTag")]
26    AttributeTag,
27    #[serde(rename = "AuditLog")]
28    AuditLog,
29    #[serde(rename = "AuthKey")]
30    AuthKey,
31    #[serde(rename = "Bruteforce")]
32    Bruteforce,
33    #[serde(rename = "Cerebrate")]
34    Cerebrate,
35    #[serde(rename = "Community")]
36    Community,
37    #[serde(rename = "CorrelationExclusion")]
38    CorrelationExclusion,
39    #[serde(rename = "Correlation")]
40    Correlation,
41    #[serde(rename = "Dashboard")]
42    Dashboard,
43    #[serde(rename = "DecayingModelMapping")]
44    DecayingModelMapping,
45    #[serde(rename = "DecayingModel")]
46    DecayingModel,
47    #[serde(rename = "EventBlocklist")]
48    EventBlocklist,
49    #[serde(rename = "EventDelegation")]
50    EventDelegation,
51    #[serde(rename = "EventGraph")]
52    EventGraph,
53    #[serde(rename = "EventLock")]
54    EventLock,
55    #[serde(rename = "Event")]
56    Event,
57    #[serde(rename = "EventReport")]
58    EventReport,
59    #[serde(rename = "EventTag")]
60    EventTag,
61    #[serde(rename = "FavouriteTag")]
62    FavouriteTag,
63    #[serde(rename = "Feed")]
64    Feed,
65    #[serde(rename = "FuzzyCorrelateSsdeep")]
66    FuzzyCorrelateSsdeep,
67    #[serde(rename = "GalaxyClusterBlocklist")]
68    GalaxyClusterBlocklist,
69    #[serde(rename = "GalaxyCluster")]
70    GalaxyCluster,
71    #[serde(rename = "GalaxyClusterRelation")]
72    GalaxyClusterRelation,
73    #[serde(rename = "GalaxyClusterRelationTag")]
74    GalaxyClusterRelationTag,
75    #[serde(rename = "GalaxyElement")]
76    GalaxyElement,
77    #[serde(rename = "Galaxy")]
78    Galaxy,
79    #[serde(rename = "Inbox")]
80    Inbox,
81    #[serde(rename = "Job")]
82    Job,
83    #[serde(rename = "Log")]
84    Log,
85    #[serde(rename = "MispObject")]
86    MispObject,
87    #[serde(rename = "Module")]
88    Module,
89    #[serde(rename = "News")]
90    News,
91    #[serde(rename = "NoticelistEntry")]
92    NoticelistEntry,
93    #[serde(rename = "Noticelist")]
94    Noticelist,
95    #[serde(rename = "NotificationLog")]
96    NotificationLog,
97    #[serde(rename = "ObjectReference")]
98    ObjectReference,
99    #[serde(rename = "ObjectRelationship")]
100    ObjectRelationship,
101    #[serde(rename = "ObjectTemplateElement")]
102    ObjectTemplateElement,
103    #[serde(rename = "ObjectTemplate")]
104    ObjectTemplate,
105    #[serde(rename = "Organisation")]
106    Organisation,
107    #[serde(rename = "OrgBlocklist")]
108    OrgBlocklist,
109    #[serde(rename = "Post")]
110    Post,
111    #[serde(rename = "Regexp")]
112    Regexp,
113    #[serde(rename = "RestClientHistory")]
114    RestClientHistory,
115    #[serde(rename = "Role")]
116    Role,
117    #[serde(rename = "Server")]
118    Server,
119    #[serde(rename = "ShadowAttribute")]
120    ShadowAttribute,
121    #[serde(rename = "SharingGroupOrg")]
122    SharingGroupOrg,
123    #[serde(rename = "SharingGroup")]
124    SharingGroup,
125    #[serde(rename = "SharingGroupServer")]
126    SharingGroupServer,
127    #[serde(rename = "SightingdbOrg")]
128    SightingdbOrg,
129    #[serde(rename = "Sightingdb")]
130    Sightingdb,
131    #[serde(rename = "Sighting")]
132    Sighting,
133    #[serde(rename = "TagCollection")]
134    TagCollection,
135    #[serde(rename = "TagCollectionTag")]
136    TagCollectionTag,
137    #[serde(rename = "Tag")]
138    Tag,
139    #[serde(rename = "Task")]
140    Task,
141    #[serde(rename = "TaxonomyEntry")]
142    TaxonomyEntry,
143    #[serde(rename = "Taxonomy")]
144    Taxonomy,
145    #[serde(rename = "TaxonomyPredicate")]
146    TaxonomyPredicate,
147    #[serde(rename = "TemplateElementAttribute")]
148    TemplateElementAttribute,
149    #[serde(rename = "TemplateElementFile")]
150    TemplateElementFile,
151    #[serde(rename = "TemplateElement")]
152    TemplateElement,
153    #[serde(rename = "TemplateElementText")]
154    TemplateElementText,
155    #[serde(rename = "Template")]
156    Template,
157    #[serde(rename = "TemplateTag")]
158    TemplateTag,
159    #[serde(rename = "Thread")]
160    Thread,
161    #[serde(rename = "ThreatLevel")]
162    ThreatLevel,
163    #[serde(rename = "User")]
164    User,
165    #[serde(rename = "UserSetting")]
166    UserSetting,
167    #[serde(rename = "WarninglistEntry")]
168    WarninglistEntry,
169    #[serde(rename = "Warninglist")]
170    Warninglist,
171    #[serde(rename = "WarninglistType")]
172    WarninglistType,
173
174}
175
176impl std::fmt::Display for ModelName {
177    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
178        match self {
179            Self::AdminSetting => write!(f, "AdminSetting"),
180            Self::Allowedlist => write!(f, "Allowedlist"),
181            Self::AttachmentScan => write!(f, "AttachmentScan"),
182            Self::Attribute => write!(f, "Attribute"),
183            Self::AttributeTag => write!(f, "AttributeTag"),
184            Self::AuditLog => write!(f, "AuditLog"),
185            Self::AuthKey => write!(f, "AuthKey"),
186            Self::Bruteforce => write!(f, "Bruteforce"),
187            Self::Cerebrate => write!(f, "Cerebrate"),
188            Self::Community => write!(f, "Community"),
189            Self::CorrelationExclusion => write!(f, "CorrelationExclusion"),
190            Self::Correlation => write!(f, "Correlation"),
191            Self::Dashboard => write!(f, "Dashboard"),
192            Self::DecayingModelMapping => write!(f, "DecayingModelMapping"),
193            Self::DecayingModel => write!(f, "DecayingModel"),
194            Self::EventBlocklist => write!(f, "EventBlocklist"),
195            Self::EventDelegation => write!(f, "EventDelegation"),
196            Self::EventGraph => write!(f, "EventGraph"),
197            Self::EventLock => write!(f, "EventLock"),
198            Self::Event => write!(f, "Event"),
199            Self::EventReport => write!(f, "EventReport"),
200            Self::EventTag => write!(f, "EventTag"),
201            Self::FavouriteTag => write!(f, "FavouriteTag"),
202            Self::Feed => write!(f, "Feed"),
203            Self::FuzzyCorrelateSsdeep => write!(f, "FuzzyCorrelateSsdeep"),
204            Self::GalaxyClusterBlocklist => write!(f, "GalaxyClusterBlocklist"),
205            Self::GalaxyCluster => write!(f, "GalaxyCluster"),
206            Self::GalaxyClusterRelation => write!(f, "GalaxyClusterRelation"),
207            Self::GalaxyClusterRelationTag => write!(f, "GalaxyClusterRelationTag"),
208            Self::GalaxyElement => write!(f, "GalaxyElement"),
209            Self::Galaxy => write!(f, "Galaxy"),
210            Self::Inbox => write!(f, "Inbox"),
211            Self::Job => write!(f, "Job"),
212            Self::Log => write!(f, "Log"),
213            Self::MispObject => write!(f, "MispObject"),
214            Self::Module => write!(f, "Module"),
215            Self::News => write!(f, "News"),
216            Self::NoticelistEntry => write!(f, "NoticelistEntry"),
217            Self::Noticelist => write!(f, "Noticelist"),
218            Self::NotificationLog => write!(f, "NotificationLog"),
219            Self::ObjectReference => write!(f, "ObjectReference"),
220            Self::ObjectRelationship => write!(f, "ObjectRelationship"),
221            Self::ObjectTemplateElement => write!(f, "ObjectTemplateElement"),
222            Self::ObjectTemplate => write!(f, "ObjectTemplate"),
223            Self::Organisation => write!(f, "Organisation"),
224            Self::OrgBlocklist => write!(f, "OrgBlocklist"),
225            Self::Post => write!(f, "Post"),
226            Self::Regexp => write!(f, "Regexp"),
227            Self::RestClientHistory => write!(f, "RestClientHistory"),
228            Self::Role => write!(f, "Role"),
229            Self::Server => write!(f, "Server"),
230            Self::ShadowAttribute => write!(f, "ShadowAttribute"),
231            Self::SharingGroupOrg => write!(f, "SharingGroupOrg"),
232            Self::SharingGroup => write!(f, "SharingGroup"),
233            Self::SharingGroupServer => write!(f, "SharingGroupServer"),
234            Self::SightingdbOrg => write!(f, "SightingdbOrg"),
235            Self::Sightingdb => write!(f, "Sightingdb"),
236            Self::Sighting => write!(f, "Sighting"),
237            Self::TagCollection => write!(f, "TagCollection"),
238            Self::TagCollectionTag => write!(f, "TagCollectionTag"),
239            Self::Tag => write!(f, "Tag"),
240            Self::Task => write!(f, "Task"),
241            Self::TaxonomyEntry => write!(f, "TaxonomyEntry"),
242            Self::Taxonomy => write!(f, "Taxonomy"),
243            Self::TaxonomyPredicate => write!(f, "TaxonomyPredicate"),
244            Self::TemplateElementAttribute => write!(f, "TemplateElementAttribute"),
245            Self::TemplateElementFile => write!(f, "TemplateElementFile"),
246            Self::TemplateElement => write!(f, "TemplateElement"),
247            Self::TemplateElementText => write!(f, "TemplateElementText"),
248            Self::Template => write!(f, "Template"),
249            Self::TemplateTag => write!(f, "TemplateTag"),
250            Self::Thread => write!(f, "Thread"),
251            Self::ThreatLevel => write!(f, "ThreatLevel"),
252            Self::User => write!(f, "User"),
253            Self::UserSetting => write!(f, "UserSetting"),
254            Self::WarninglistEntry => write!(f, "WarninglistEntry"),
255            Self::Warninglist => write!(f, "Warninglist"),
256            Self::WarninglistType => write!(f, "WarninglistType"),
257        }
258    }
259}
260
261impl Default for ModelName {
262    fn default() -> ModelName {
263        Self::AdminSetting
264    }
265}
266