Error in creating a category with the REST API
vRO 7.0.1
I am trying to create a category in the folder root of Workflow using the REST API.
URL = https://vroserver.fqdn:8281 / vco/api/categories
Method = POST
The API documentation suggests that the body should be like this:
{
"categoryType": "WorkflowCategory",
'name': "Test5",.
'description': 'Testing '.
}
However, I always get a 400 response: the request sent by the client is syntactically incorrect.
reflecting the docs by: category name must be specified
Can anyone help?
Body of the request should be:
{ "type":"WorkflowCategory", "name":"Test5", "description":"Testing" }
Tags: VMware
Similar Questions
-
Get the 500 error trying to create a table using the REST API
Hello
I tried to create a table using the REST API for Business Intelligence Cloud, but I got 500 Internal Server Error for a while now.
Here are the details that I use to create a table.
and the json to create the schema that I use is
[{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [18], 'columnName': ["ROWID"]}]
, {'Nullable': [true], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [18], 'columnName': ['RELATIONID']},
{'Nullable': [true], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [18], 'columnName': ['ID']}
, {'Nullable': [true], 'defaultValue': 'dataType' [null],: ['TIMESTAMP'], 'precision': [0], 'length': [0], 'columnName': ['RESPONDEDDATE']},
{'Nullable': [true], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [255], 'columnName': ['RESPONSE']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['TIMESTAMP'], 'precision': [0], 'length': [0], 'columnName': ['SYS_CREATEDDATE']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [18], 'columnName': ['SYS_CREATEDBYID']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['TIMESTAMP'], 'precision': [0], 'length': [0], 'columnName': ['SYS_LASTMODIFIEDDATE']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [18], 'columnName': ['SYS_LASTMODIFIEDBYID']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['TIMESTAMP'], 'precision': [0], 'length': [0], 'columnName': ['SYS_SYSTEMMODSTAMP']},
{'Nullable': [false], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [10], 'columnName': ['SYS_ISDELETED']},
[{'Nullable': [true], 'defaultValue': 'dataType' [null],: ['VARCHAR'], 'precision': [0], 'length': [50], 'columnName': ['TYPE']}]
I tried this using postman and code, but I always get the following response error:
Error 500 - Internal server error
Of RFC 2068 Hypertext Transfer Protocol - HTTP/1.1:
10.5.1 500 internal Server Error
The server encountered an unexpected condition which prevented him from meeting the demand.
I am able to 'get' existing table schemas, delete the tables, but I'm not able to make put them and post operations. Can someone help me to identify the problem, if there is no fault in my approach.
Thank you
Romaric
I managed to create a table successfully using the API - the only thing I see in your JSON which is different from mine is that you have square brackets around your values JSON where I have not. Here is my CURL request and extract my JSON file (named createtable.txt in the same directory as my CURL executable):
curl u [email protected]: password UPDATED h x ' X-ID-TENANT-NAME: tenantname ' h ' Content-Type: application/json '-binary data @createtable.txt https://businessintell-tenantname.analytics.us2.oraclecloud.com/dataload/v1/tables/TABLE_TO_CREATE k
[
{
'columnName': 'ID',
'dataType': 'DECIMAL ',.
'Length': 20,.
"accuracy": 0.
'Nullable': false
},
{
'columnName': 'NAME',
'dataType': 'VARCHAR ',.
'Length': 20,.
"accuracy": 0.
'Nullable': true
},
{
"columnName': 'STATUS."
'dataType': 'VARCHAR ',.
'Length': 20,.
"accuracy": 0.
'Nullable': true
},
{
"columnName': 'CREATED_DATE."
'dataType': 'TIMESTAMP '.
'Length': 20,.
"accuracy": 0.
'Nullable': true
},
{
'columnName': 'UPDATED_DATE ',.
'dataType': 'TIMESTAMP '.
'Length': 20,.
"accuracy": 0.
'Nullable': true
}
]
-
QUESTION: Can't create a firewall rule to (edge) with the REST API
Dear Sir
I am trying to create a firewall rule for simple and basic edge using the REST API.
I use the REST API guide as a reference on page 158.
I use the following code (single) in my client REST API (with good content Type (application/xml)):
< rule >
< ruleTag > < / ruleTag >
< name > edge5-rest-rule < / name >
all < source > < / source >
< destination > all < / destination >
< application > all < / application >
< matchTranslated > true < / matchTranslated >
< management > in < / direction >
< action > deny < / action >
< enabled > false < / enabled >
< loggingEnabled > true < / loggingEnabled >
rest-api-rule of the < description > < / description >
< / rule >
The error message that I receive is the following:
<? XML version = "1.0" encoding = "UTF-8"? >
< error >
request details invalid <>. Found no match for item rule. < / details >
< > 223 errorCode < / errorCode >
< / error >
The full screenshot of my action REST API is in the screenshot below:
Anyone know what I'm doing wrong here?
Thank you!
Try this as the body...
rest-rule user true in deny fake true rest-api-rule -
Can not do a query with the REST api
Hello
After discovering that the use of the standard SOAP API what is like poking yourself in the eye with a sharp stick, I try to use the REST API. At first, I tried to exercise it through the extension of POSTMAN on Chrome. But I have no joy.
Can I use caller ID to get the URL, so I know that my authentication is OK. But all other calls give me:
Failure of 403 XSRF Protection
Is an example of a call, that I'm trying:
https://secure.Eloqua.com/API/rest/1.0/data/[email protected] & Count = 1
I can't find any reference anywhere to this error 403.
Help!
Thank you
Simon
Hi Simon,.
Looks like you're client (web browser) might have stored credentials for Eloqua, probably in the cookies collection. If you try to delete your cookies and rerun the query API with basic authentication, it should work.
Hope this helps and please let us know if you need more information.
Thank you
Fred
-
Add vNIC PortGroup scope with the REST API security group
I created a security group within the reach of a PortGroup via the REST API. Now, I'm trying to add a vNIC, also via the REST API.
To help illustrate, I have a JMTest1 VM with 1 vNIC connected to the PortGroup which is the scope of the security group. When I change this group the first item in the list that could be added to the security group is the first (and only) JMTest1 vNIC.
To add it via the REST API, I need to provide the following:
https://192.168.x.x/API/2.0/services/SecurityGroup/SecurityGroup-XX/members/ < member-moref >
for example I need to understand what the < member-moref > for the vNIC to JMTest1 and this is what I have a problem with.
If I add the vNIC through the user interface and then interrogate the security group it gives me below the answer:
< securitygroup >
< objectIdobjectId > securitygroup-xx < / objectId >
< type >
< typeName > SecurityGroup < / typeName >
< / type >
< name > JMTest7 < / name >
< description / >
< revision > 9 < / revision >
< objectTypeName > SecurityGroup < / objectTypeName >
< scope >
< id > dvportgroup-xxxxx / < ID >
< objectTypeName > DistributedVirtualPortgroup < / objectTypeName >
< name > dv-xxxxx < / name >
< / scope >
< extendedAttributes / >
< inheritanceAllowed > false < / inheritanceAllowed >
< member >
500758f6-b97b - 7A 79 - 0c < objectId > 04 - 996f53edf3f0.000 < / objectId >
< type >
Vnic < typeName > < / typeName >
< / type >
< name > JMTest1 - NIC 1 < / name >
< revision > 6 < / revision >
< objectTypeName > Vnic < / objectTypeName >
< scope >
< id > vm-xxxxx / < ID >
< objectTypeName > VirtualMachine < / objectTypeName >
< name > JMTest1 < / name >
< / scope >
< extendedAttributes / >
< / member >
< / securitygroup >
It seems that the < member-moref > for the JMTest1 vNIC is < objectId > 500758f6-b97b - a 7, 79 - 0c 04 - 996f53edf3f0.000 < / objectId >
If I run now:
then the vNIC is successfully added to the security group. (yay!) So I am now left with the task of how to get
500758f6-b97b - 7A 79 - 0c < objectId > 04 - 996f53edf3f0.000 < / objectId >
of a vNIC?
I have looked at the object in the Mob vCenter and via PowerCLI, but cannot see how to derive from it.
Anyone know the answer to that?
The uuid vnic is created by concatenating the vm instanceUuid + '. ' + the last three digits of the vnic device key. (The vnic is located in the area of the config.hardware.device of the virtual machine and the key will be to shape 4xxx, where xxx represents the 3 numbers you need).
-
How to configure Hostname of the node with the REST API?
I tried the value of hostname of the virtual machine when I deploy an application, but were unsuccessful. The application consists of all the operating system - there is no installed service but an example here that I used when I deployed the application. It is based on the release of the REST API "node info": for the particular deployment profile.
{
'node': [{}
"name': 'VM1."
"properties": [{}
"hostname": "joe".
}],
["nodeComponent":]
}]
}
But when you use this application I get the error message: "the node 'VM1' does not exist in the current 'deployment profile'. ' even if 'VM1' is the only node in the deployment profile. I tried other variations and still get the same error message.
Does anyone have suggestions for how I can configure the hostname of the node when you deploy the application? Thank you.
Apparently, the REST API for planning a deployment is designed after characteristic GUI Application Director "rapid deployment". Rapid deployment does not allow the substitution of properties of node as hostname. Idea being the deployment profile once defined and prepared, each individual call of it must change some subset of the properties of the component. We can always create several profiles of deployment to account for changes in node.
Nevertheless, it seems that property of node specifications would help your situation... so that your comments reached the product team.
Thank you rags
This posting is provided as is and confers no rights.
-
Get complete information of Contact with the REST API with Ruby
Hello
I'm trying to find information from a contact using the REST API from Ruby. I followed the example posted here and I was able to get good contact with Eloqua, but information are the basis and the FieldValues table is very long with fieldValues can only be and no label field.
I don't know I asked for complete = depth, and I verified that the contact even on the side of Eloqua seen so many other areas.
It's the URL that I use: https://secure.eloqua.com/API/REST/1.0/data/contacts?search= < emailAddress > & depth = full & count = 1
and I don't get like this field in the fieldValues can only be: {'type': 'FieldValue', 'id': "100175"}
With respect to the main information, they are basic.
Is it possible to obtain all the contact fields, the same than the one I see on the site of Eloqua?
Thank you
Hi Theyaa,
You can use the following endpoint to retrieve a list of all fields with their unique identifier and metadata:
- GET /API/REST/1.0/assets/contact/fields?depth=complete&search=*&page=1&count=250
Hope this helps and please let me know if you need more information.
Thank you
Fred
-
To access the vCOPs with the RESTful API
VCOPs can be used such as the information it provides are accessible via the RESTful API?
RV Ops 6.x see this thread:
-
Connection to vCloud Director 5.1 with the REST api plugin
I'm following part of the manual, I found here: http://blogs.vmware.com/orchestrator/2011/07/vcloud-director-twitter-yahoo-and-foursquarecom-http-rest-plug-in-use-case-examples.html
So I install the plugin and run the workflow to add a host:
And set the authentication with the workflow "Set vCloud to authenticate a host REMAINS:
And run the supplied workflow "show a vCloud, Director of the Organization:
And get the error: "no valid API version can be selected.
I also tried with version 1.0 and 1.5 of putting in the URL, but cannot make it work. What Miss me?
Thank you.
Hello
It is a problem with you REST plugin does not support the vCloud 5.1 authentication correctly.
I created the following work around to fill the gap until a new version of the plugin REST solves this problem.
Please find here.
Christophe.
-
I'm following the flow described in bulk API Documentation v2.0
I POST to https://secure.Eloqua.com/API/bulk/2.0/activities/exports and back (note: I work in python, so it's all the deserialized json)
{u 'createdAt': u'2014 - 08-14T 07: 05:17.6413979Z',}
u 'createdBy': u'P of,
u 'fields': {u 'ActivityDate': u'{{Activity.CreatedAt}} ',}
u 'ActivityId': u'{{Activity.Id}} "},"
u 'filter': u "('{{Activity.CreatedAt}}' > ' 2014-07-31T23:43:02.080971Z' ET '{{Activity.Type}}' = 'EmailOpen') ',"
u 'name': u 'blarg3 ',.
u 'updatedAt': u'2014 - 08-14T 07: 05:17.6413979Z',.
u 'updatedBy': u'P of,
u 'uri': u ' {/ activities/exports/275 '} '.
Then I POST on /syncs and get back
{u 'createdAt': u'2014 - 08-14T 07: 05:31.6571126Z',}
u 'createdBy': u'P of,
u 'status': u 'pending',
u 'syncedInstanceUri': u ' / activities/exports/275 ', '.
{u 'uri': u'/ synchronization/17790 '}
Now (unfortunately) I GET/synchronization/17790 and/syncs/17790/logs
{u 'createdAt': u'2014 - 08-14T 07: 05:31.9330000Z',}
u 'createdBy': u'P of,
u 'status': u 'error',
u 'syncStartedAt': u'2014 - 08-14T 07: 05:32.6570000Z',.
u 'syncedInstanceUri': u ' / activities/exports/275 ', '.
{u 'uri': u'/ synchronization/17790 '}
{u 'count': 2}
u 'hasMore': false,
u 'items': [{u 'count': 0}]
u 'createdAt': u'2014 - 08-14T 07: 05:33.3770000Z',.
u 'message': u 'There was an error in processing of export.',
u 'severity': u 'error',
u 'statusCode': u 'ELQ-00107',.
{u 'syncUri': u'/ synchronization/17790 '},
{u 'count': 0,}
u 'createdAt': u'2014 - 08-14T 07: 05:33.3930000Z',.
u 'message': u 'Sync to sync 17790, resulting from the error status.',
u 'severity': u 'information',
u 'statusCode': u 'ELQ-00101',.
[{u 'syncUri': u'/ synchronization/17790 '}],
u 'limit': 1000,.
'offset' u: 0,
{'u' totalResults: 2}
All that I can find ELQ-00107 is "ELQ-00107: there was an error in processing the {type}."
Any thoughts on what I can hurt? Pointers on how I can further debug?
Thank you!
Joel Rothman-Oracle Allison.Moore Christopher Campbell-Oracle Ryan Wheler-Oracle
Hi pod.
Try to remove all the void second precision of the elements in date filter. '{{Activity.CreatedAt}}' > ' 2014 - 07-31T 23: 43:02.080971Z' becomes '{{Activity.CreatedAt}}' > ' 2014 - 07-31 T 23: 43:02Z'. The second precision is not supported for export activity.
-
Updated filter shared via the REST API
Hello I'm trying to update a shared API filter. I'm using PHP and client fredsakr/eloqua-php-application · GitHub.
So far, I was able to retrieve the filter with the following call:
<?php require('./eloquaRequest.php'); $eloquaRequest = new EloquaRequest('site', 'User.Name', 'password', 'https://secure.eloqua.com/API/REST/1.0'); $response = $eloquaRequest->get('assets/contact/filters?search=TheFilterName&depth=complete'); print_r($response); ?>
I can see the filter in the answer below:
( [type] => ContactFilter [currentStatus] => Active [id] => 100761 [createdAt] => 1380137168 [createdBy] => 48 [depth] => complete [folderId] => 1036 [name] => TheFilterName [updatedAt] => 1383589417 [updatedBy] => 48 [count] => 254382 [criteria] => Array ( [0] => stdClass Object ( [type] => ContactFieldCriterion [id] => 1912 [condition] => stdClass Object ( [type] => TextSetCondition [operator] => in [optionListId] => 193 ) [fieldId] => 100012 ) ) [lastCalculatedAt] => 1380137190 [scope] => global statement] => 1912
What I want to do is update that corresponds to the values of 'Compare the Contact fields' in the GUI Eloqua under Contact = > Shared Library = > Contact filters.
Looks like he has the "[type] = ContactFieldCriterion" under the [criteria] field in the response.
I'd get how this value in a call to REST, and also how I would update it.
Please let me know if you need more details on this issue. Please help and thank you.
After some research I found what I wanted to do has been updated the list of options for this filter. See http://topliners.eloqua.com/docs/DOC-3588 for documentation on the base object. But I had difficulty in updating an OptionList with the Rest API using PUT. If you can help, please visit http://topliners.eloqua.com/message/36739#36739 . Thank you.
-
How to make a background Center with the rest of the content?
Hello world
I was wondering if I could pick your brains! I am new to Dreamweaver, I was taking a course in this and I wanted to see how much I've learned by creating a fictitious Web site.
I wanted to create a Web site with a background image in it and it brought. Now, I can get everything in the body toward the Center but not the image, so when I check in the browser, the background to the left image stays, while the rest of the site is moving with the browser window as it should. I tried many things to fix this problem and the fear that I have created a mess with the code! Please could someone point me in the right direction?
I thought I'd post the code here, hope this is ok?
< ! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional / / IN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > ""
" < html xmlns =" http://www.w3.org/1999/xhtml ">
< head >
< meta http-equiv = "Content-Type" content = text/html"; Charset = UTF-8 "/ >"
< title > Untitled Document < /title >
< style type = "text/css" >
{body
background-image: url(assets/images/Business%20Men%20In%20Reception%20Col.2.jpg).
background-repeat: no-repeat;
background-color: #003;
margin-left: auto;
margin-right: auto;
position: relative;
width: 960px;
}
#header {}
margin-left: auto;
margin-right: auto;
position: relative;
width: 960px;
}
{#heading}
are-family: Georgia, "Times New Roman", Times, serif;
are-size: 36px;
make-style: italic;
are-variant: normal;
margin-left: auto;
margin-right: auto;
}
{#bodytext}
are-family: Georgia, "Times New Roman", Times, serif;
are-size: 18px;
line-height: 25px;
are-variant: normal;
width: 300px;
}
#container {}
width: 960px;
position: relative;
margin-left: auto;
margin-right: auto;
}
{.rightimg}
float: right;
margin left: auto;
padding-right: 40px;
}
#heading #navbar ul li {}
padding: 30px;
}
< / style >
< script type = "text/javascript" >
function MM_swapImgRestore() //v3.0 {}
var i, x = offline. MM_sr; for (i = 0; a & & I <.) Length & & (x = a [i]) & & x.oSrc; i ++) x.src = x.oSrc;
}
function MM_preloadImages() {//v3.0
var d = document; If (d.images) {if(!d.MM_p) d.MM_p = new Array();
var i, j is d.MM_p.length, a = MM_preloadImages.arguments; for (i = 0; i <.) Length; i ++)
If (a [i].indexOf("#")! = 0) {d.MM_p [j] = new Image; d.MM_p [j ++] .src = a [i] ;}}
}
function MM_findObj (n, d) {//v4.01
var p, i, x; if(!d) d = document; If ((p = n.IndexOf ("?")) > 0 & & parent.frames.length) {}
d = parent.frames [n.Substring(p+1)] .document; n = n.Substring (0, p) ;}
If (!) () x = d [n]) & & copyrights) x = d.all [n]; for (i = 0;! x & & i < d.forms.length; i ++) x = d.forms [i] [n];
for (i = 0;! x & & d.layers & & I < d.layers.length; i ++) x = MM_findObj (n, d.layers [i] .document);
If (! x & & d.getElementById) x = d.getElementById (n); Return x;
}
function MM_swapImage() {//v3.0
var i, j = 0, x, a = MM_swapImage.arguments; document. MM_sr = new Array; for (i = 0; i <(a.length-2); I += 3).
If ((x = MM_findObj (a [i]))! = null) {document. MM_sr [j ++] = x; if(!x.oSrc) x.oSrc = x.src; x.SRC = a [i + 2] ;}
}
< /script >
< / head >
< body onload = "MM_preloadImages (' assets/images/home 2.jpg','assets/images/contact2.jpg','assets/images/Terms 2.jpg')" >
< div id = "header" >
< div id = "body" >
"< p > < img src="assets/images/header-1.jpg "width ="920"height ="133"alt ="header"/ > < / p >
"" "" "< p > < a href =" # "MM_swapImgRestore" onmouseover = "MM_swapImage (" self "", ' assets/images/home 2.jpg', 1) "> < img src="assets/images/home.jpg "alt ="Link to the homepage"name ="Home"width ="303"height ="32"border ="0"id ="Home"/ > < /a > < a href =" # "MM_swapImgRestore" onmouseover = "MM_swapImage (" contact us "," ' assets/images/contact2.jpg',1) "> < img src="assets/images/contact.jpg "alt ="Link to the contact page"name = width 'Contact us' = '299' height =" 32 " "" border = "0" id = "Contact us" / > < /a > < a href = "#" MM_swapImgRestore "onmouseover =" MM_swapImage ('Conditions', ", '2.jpg', 1 assets/images/words)" > < img src="assets/images/Terms.jpg" alt = "Link on the business terms" name = "Terms" width = "311" height = "32" border = "0" id = "Terms" / > < /a > < /p >
< / div >
< / div >
< div id = "topic" >
< p > welcome < img src = "assets/images/Man In suit crop.jpg" alt = "Man in a suit" width = "281" height = "220" class = "rightimg" / > < / p >
< / div >
< div id = "bodytext" >
< p > here at Alexander Head & amp; Co Ltd that our goal is to provide business service levels, they used to enjoy before the time of consolidator. With the insurance market changes so quickly and more provincial brokers being supported by large organizations, levels of service personnel are disappear. We offer you this service and always offer him < br / >
competitive premiums that you deserve. Read about < /p >
< / div >
< p > < img src = "Images/assets/young businessmen crop.jpg" alt = "young business people" width = "282" height = "216" class = "rightimg" / > < / p >
< / body >
< / html >
Kind regardsDaveAdd to your body rule
background-position: center;
Gary
-
I don't want flash cookies removed with the rest of the cookies.
Either an update with firefox or adobe flash player now couples cookies flash with the rest. I like to have my associate internet cookies clear after closing the browser to help save space and destroy what is malicious, but do not want to have my flash game data get allowed in the process. I checked the Security tab in the options, but he doesn't seem to be a way to specify for cookies flash to stay safe and sound; There delete all cookies or delete cookies. Is it possible to have my cookie and eat, too?
Let the cookies expire when you close Firefox instead of using Delete browsing, search and download history on Firefox.
-
My old program MS - Dos ran full-screen in earlier versions of Windows, including earlier versions of Windows XP. Because of something in one of the updates is now the top third only in mode full screen, with the rest of the screen black, white and scrollable (as the Windows XP version of the command prompt has always been). How to return to a usable full-screen version (that is, the previous version of MS-DOS)?
Hi Robert,.
Please see the link below for the procedure to correct this problem.
http://support.Microsoft.com/kb/272447
Good luck.
-
OfficeJet Pro 8600 +. Once we replaced the ink cartridges, our printer gives an error "there is a problem with the printer or the ink system. Turn the printer off, then on. If the problem persists, contact HP. We've gone through the start/stop several times. We also pulled back and ink cartridges in, in addition to taking the print head at. I ran a diagnostic test download and it comes back with "unknown error (06). Help, please!
Thanks for your reply. We exchanged all Costco ink cartridges and the printer seems to work very well at this point. Yes, we did all of the print head and cartridge cleanings. Nothing seemed to help.
Maybe you are looking for
-
Help! I condemned my phone to the death of sweat! If I'm screwed?
Hi guys! Here's my deal I have an iPhone 6 s and she is beautiful and I love it but I have a problem! I am a store at Costco and it's very intense and sweaty work. They play music on the speaker on the head, but in my Department and I do not mean squ
-
Opening tools used as 3rd party tools for editing editing pictures?
Guys, if you have open on your Mac and use the new application Photos... Are you able to use Aperture photo editing tools at all? It would be a great feature!
-
Where can I download drivers for my C50T A052
Hello Please help me my laptop Toshiba satellite C50T-052 has been affected by the virus and I want to reformat... but I can't successfully download driver at Toshibamea... is their another website where I can download the driver... .TNX
-
My HP Pavilion Entertainment PC will not communicate with my printer HP 309g. Suffice to say that they are connected to WIFI. I have tried wireless and connected.
-
Do we allow for practice in our professional life?
One of my favorite parts of the day is the time to work from home with my children. I know that sounds ridiculous, but it is true. It could be that working from home is still to digest and I always understood. It's a good opportunity to spend indi