Need to get details of all the user on sharepoint site

i have around 1000+ users in my tenant.
i am not sure what permissions have given to which user on which location on share point online site.
Is there any way to find this in office 365 ?
with the help of powershell or any  code?

Hi,
According to your description, you might want to get details about permissions of all users in your SharePoint Online tenant.
A solution can be like this: Iterate through all site collections in your tenant, all sites in each site collection, all lists/libraries in each sites. Then we can
start to check the user permissions on each of the object(site, list or library) retrieved, all the operation can be done with SharePoint Client Object Model with C#.
Here is a link about how to retrieve all site collections in a tenant:
http://sharepoint.stackexchange.com/questions/105653/retrieve-all-site-collections
About how to enumerate all the sites and lists in a site collection:
https://social.msdn.microsoft.com/Forums/sharepoint/en-US/284b5f9c-104e-4cbb-8d59-757274f075c5/get-all-subsites-under-site-collection-by-sharepoint-2010-client-object-model?forum=sharepointdevelopmentprevious
https://msdn.microsoft.com/en-us/library/office/ee538683(v=office.14).aspx
Here is a working demo about how to get user permissions of a list using Client Object Model, you can use it as a reference:
public static void getListRoleAssignments()
string siteUrl = "http://yoursite";
string listName = "List1";
ClientContext ctx = new ClientContext(siteUrl);
List myList = ctx.Web.Lists.GetByTitle(listName);
var roles = ctx.LoadQuery(
myList.RoleAssignments.Include(
roleAsg => roleAsg.Member,
roleAsg => roleAsg.RoleDefinitionBindings.Include(roleDef => roleDef.Name)));
ctx.ExecuteQuery();
foreach (RoleAssignment ra in roles)
Console.WriteLine("User or Group: " + ra.Member.LoginName.ToString());
var rdc = ra.RoleDefinitionBindings;
string permission = string.Empty;
foreach (var rdbc in rdc)
Console.WriteLine("Permission: " + rdbc.Name.ToString());
Console.WriteLine("+++++++++++++");
It won't be an easy job to make all these things working together, therefore, a fact you might want to take into consideration is that more time and effort would be
required.
Feel free to reply if there still anything I can help in this requirement.
Best regards
Patrick Liang
TechNet Community Support

Similar Messages

  • Starting a podcast promoting music, but i dont know anything about the law (copyright). Do i need to get permission from all the labels or can I start broadcasting right away?

    Any information regarding this issue is very appreciated!

    Any recording made in the last 50 years, or any piece of music composed by a person who died less than 70 years ago (Europe) or I think 50 years ago (USA) is copyright protected. This would therefore apply to any recording made in the modern era. (Corporations have also been able to extend the copyright of a work beyond what would otherwise be the expiry date - this is known as the 'Mickey Mouse Act' as Disney were among the first - and this may apply to the works of certain popular composers, though only in the USA.)
    In order to include such a recording in your podcast - an action which amounts to publishing it - you must have written permission from the owners of copyrights in both the recording and the music; or possession of a podcasting licence from a recognised authority (I believe these are only available in the USA).
    Without these, to publish such items would be a breach of copyright and could possibly render you liable to a civil suit for recovery of damages - this could also apply to Apple who might be regarded as co-publisher. If Apple spot you doing this they will reject your podcast.
    Many podcasts do exactly this, as complete recordings or 'mixes', and get away with it: this simply means they haven't been noticed or their actions are being ignored. However, the strict answer is that you must get (and very likely have to pay for) individual permissions or a licence.
    If you are in the USA you maybe able to get such a licence: I can't advise on this but Googling is certain to bring up some information. If you do this you will have to find a way to inform Apple that you have such a licence, or they may assume that you are in breach of copyright.
    Sorry to go all 'last-will-and-testament' on you, but you did ask and I'm afraid that that is the strictly accurate answer.

  • HT3702 need to get credit for all the in app purchases! they said they were going to credit

    Checking on credits

    If you are referring to the legal settlement regarding in-app purchases by children, see:
    https://www.itunesinapppurchasesettlement.com/CAClaimForms/AIL/Home.aspx
    Read the FAQ. If that's not what you're referring to, please post back and clarify your issue.
    Regards.

  • User management API/get all the users for a group

    Hi all,
    I'm trying to get all the users and their associated groups with the user management API. The method DirectoryManagerServiceClient.findGroupMembers(GroupMembershipSearchFilter)
    returns all the users, great, but not the associated groups.
    TO get the users i use the oid of a "super group" and this "super group" contains severals groups. It's the information about these groups i need.
    I have read in the documentation of Principal Object that a search could omit
    the group informations for efficiency. How can i bypass this limitation?
    Thank you in advance for your help,
    Philippe Vandenhove

    Hi Philippe
    Our CreateUser component will allow you to create local users and groups.
    http://avoka.dnsalias.com/confluence/display/Public/Create+User+Create+Group
    LookupGroup takes a group name or id, and returns a list of all members. I'm pretty sure it recursively evaluates contained groups, but you'll need to check. If it doesn't, log a bug to support-at-avoka.com.
    http://avoka.dnsalias.com/confluence/display/Public/Lookup+DSC
    Download at:
    vhttp://www.avoka.com/apps/checkcookie?qpac=y&qpac_code=avokaESComponents&location=%2Fapps %2Fqpacdownload
    Howard

  • My phone has been smashed I need to get records of all my iMessages and texts from the last month. How do I get these?

    My phone has been smashed I need to get records of all my iMessages and texts from the last month. How do I get these?

    Do you have a backup of your iPhone which contains these messages?
    If so, you can restore a new iPhone from that backup during setup.
    If not, the messages are gone.

  • How can i get all the users from weblogic server?

    how can i get all the users from weblogic server?
    i have configurated a LDAP server using iPlanet and
    in weblogic server console i see those users from LDAP
    server. but how can i get all the users in my program
    from weblogic server instead of LDAP server?
    BTW,how to configure a RDBMSAuthenticator and what should i do
    in Oracle? which tables should i create? and how are their architectures?
    Thanks
    Daniel

    BTW, i use weblogic platform 8.1
    "Daniel" <[email protected]> дÈëÓʼþ
    news:[email protected]..
    how can i get all the users from weblogic server?
    i have configurated a LDAP server using iPlanet and
    in weblogic server console i see those users from LDAP
    server. but how can i get all the users in my program
    from weblogic server instead of LDAP server?
    BTW,how to configure a RDBMSAuthenticator and what should i do
    in Oracle? which tables should i create? and how are their architectures?
    Thanks
    Daniel

  • Query regarding the fields details in particular form for all the users in

    Dear All,
                  I have one query regarding the fields details in particular form for all the users in company.
    Let take an exapmle if i had created Purchase Order having fields in content tab as 1.Item No. 2.Quantity 3.Unit Proce   4.Total   5. Location.
    While Login in User manager i set these fields only for Purchase order , but when i login from other user and open the similar purchase order the defaults fields are also seen including  above 4 fieds .
    Now my question is how to set the User choice fiels for the particular form that are common to all users.
    Means whenever i login in any user and opens the same document the same fields should be seen....Thanksssss.........

    You have to login with each and every user and do the Form Settings of every forms, so that all the forms look same for all the users.
    This is a manual job and you have do do it with every user login.
    Alternately, you can try out this link that explains
    [How to Copy One Screen Layout to Another User|http://www.sbonotes.com/2008/03/how-to-copy-one-screen-layout-to.html]

  • Need JavaScript for Sharepoint Designer 2010, to show a Pop-up to all the users between date range and the redirect the site

    Dear all,
    I am very new to Sharepoint designer 2010. Its better to say, i am just stepping in.
    I have sharepoint site which is accessible for all the users to update few information. But i want this site not to be accessible during a date range, say from 15th to 20th of every month.
    I am planning to have something like this: If any user tries to access this sharepoint site between 15th to 20th date range of everymonth, then the browser must show an pop-up alert saying "This site is not accessible during this date range" and Redirect
    this sharepoint site to someother site (Say http:// somesitename.xx.com) immidiately.
    I know very little about how to add Javascript in sharepoint webpart.
    Please provide the Javascript or any best alternate solution to my concern.
    Thanks in advance.

    Hi,
    From your description, my understanding is that you want to redirect sharepoint site to another site between 15th and 20th every month.
    I agree with what Sudip says. If you still want to use JS code,You could try these steps
    below:
    Open your site with SharePoint Designer.
    Click Master Pages in left navigation.
    Find file v4.master, and backup it(it is very important).
    Right click your v4.master,
    choose "Edit File in Adavance Mode".
    Add the code below into the <head/> tag.
    <script src="https://code.jquery.com/jquery-1.11.1.min.js" type="text/javascript"></script><script
    type="text/javascript">
    $(document).ready(function(){
    var today = new Date();  
    var day = today.getDate(); // get current day
    var id = _spPageContextInfo.userid; // get the id of current logon in user
    var boolFlg = false;
    $.ajax({
       url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/SiteGroups/GetByName(\'"+"sharepoint Owners"+"\')/Users", //get users in a specified group can access the sharepoint site from 15th to 20th every
    month
       type: "GET",
       headers: {"accept": "application/json;odata=verbose"},
       success: function (data) {
          if (data.d.results) { 
             var src = data.d.results;
             for(var i = 0; i < src.length; i++){
                if(src[i].userid==id){ //check the logon in user in  the specified group or not
                   boolFlg = false;
                   break;
             if(!boolFlg){
                if(day <= 20 && day >=15){
                    alert("This site is not accessible during this date range"); // alert the message
                    location.href = "http:// somesitename.xx.com"; // redirect to another site
       error: function (xhr) {
          alert(xhr.status + ': ' + xhr.statusText);
    })</script>
    Best Regards
    Vincent Han
    TechNet Community Support

  • I want to get all the user name form LOGIN table ... how help me ?

    hi all
    I have table in MS Access databse called Login with two coulmn (User, Password),
    I want to get all the User Name in a string[] called USER,
    (LIKE USER = {"AA","BB","CC",........"zz"};)
    can anybody send me the code to get the USERNAMES form Login Table, i tried lots of way but bad luck
    so plz someone send me a code.
    Thanx
    Regards
    Satinder

    I made something like this as He pasted the the code above and u know this works for me atleast thanx
    kind regards
    satinderjit
    String User[] = new String[1000];
    try
    //Load Driver
    Class.forName(driver);
    // Make Connection
    connection=DriverManager.getConnection(url,user,password);
    // Create Statement
    statement = connection.createStatement();
    sql = "SELECT User FROM Login" ;
    // Create Resultset
    rs = statement.executeQuery(sql);
    int j=0;
    while(rs.next())
    User[j]= rs.getString("User");
    j=j+1;
    for(int i=0 ;i<J;i++)
    Form.C_Manager.addItem(User);
    statement.close();
    //rs.close();
    connection.close();
    catch(ClassNotFoundException cnfex) {
    //show message
    JOptionPane.showMessageDialog((Component) null,
    "Failed to load driver..."+
    "\n"+cnfex.getMessage(),
    "Error...",
    JOptionPane.ERROR_MESSAGE);
    catch(SQLException sqlex){
    //show message
    JOptionPane.showMessageDialog((Component) null,
    "Unable to connect to Database..."+
    "\n"+sqlex.getMessage(),
    "Error...",
    JOptionPane.ERROR_MESSAGE);
    catch(ArrayIndexOutOfBoundsException e){
    //show message
    JOptionPane.showMessageDialog((Component) null,
    "Unable to Load User Name..."+
    "\n"+e.getMessage(),
    "Error...",
    JOptionPane.ERROR_MESSAGE);

  • I want to get all the User Name in a string[ ], but How..... don't know

    hi all
    I have table in MS Access databse called Login with two coulmn (User, Password),
    I want to get all the User Name in a string[] called USER,
    (LIKE USER = {"AA","BB","CC",........"zz"};)
    can anybody send me the code to get the USERNAMES form Login Table, i tried lots of way but bad luck
    so plz someone send me a code.
    Thanx
    Regards
    Satinder

    Well, the biggest problem is that you don't know (probably) a head of time how many names are in the table.
    So i'd first stuff them into a managed array such as ArrayList
    So you'd
    (1) Iterate over the resultset
    (1.1) for each row call getString() on the user field
    (1.1) call add on the ArrayList to add the string
    (2) Call toArray on the ArrayList to convert it to a plain array
    (NOTE: you will have to pass a String[] {""} arg as a parm to
    toArray() to get the right type of array.)

  • HT1311 I can't get the country to change because I need to get rid of all my money but I have 84 cents

    I have accidentally change countries for my iTunes Store and now I can't change back to Australia. I try to change it but it says I need to get rid if all my money but I only have 84 cents and can't get rid of it. Can anybody help me with my problem

    You can't buy something for more than 84 cents? like spend a $1? 

  • Mail step should be sent to all the users in multiple condition

    hi experts,
                      I have a requirement on invoice posting.Say if invoice amount is 1000 then person A can post the invoice.
    if >= 1000 person B can post the invoice.
    If >=2000 person C can post the invoice.
                                                                      what i have did is, created a multiple condition and then based on the inv amount assigned 3 methods for invoice posting.My problem is if a person posts an invoice amount of 1000.A mail has to be sent to Person B and C informing that an amount of 1000 is posted with user id.Same for person B, ie mail should be sent to person A and C informing regarding invoice posting.Now inside the multiple condition i cannot assign mail step.Coz based on the condition it will go to a particular user for invoice posting but where as mail should be sent to all the users.So how can i achieve this??.

    Hi Priyanka,
    I am getting 1 thing why you need need multiple conditions. No need to create any multiple conditions.
    1. Create a rule using transaction PFAC. (you can use the example as Rule: 0000168).
        a. Create an function module with table parameters as ACTOR_TAB (type SWHACTOR) and AC_CONTAINER (Type
            SWCONT). You can aswell copy the FM used in 168 rule and change it. check the logic mentioned below.
        b. In PFAC transaction, go to container tab and create 2 container elements.  For amount and Mail_indicator (type should be
            same as that of the amount field in your workflow) .
    2. Use this Rule in your workflow to send mail.
    Logic:
    ""Lokale Schnittstelle:
    *"       TABLES
    *"              ACTOR_TAB STRUCTURE  SWHACTOR
    *"              AC_CONTAINER STRUCTURE  SWCONT
    *"       EXCEPTIONS
    *"              NOBODY_FOUND
      INCLUDE <CNTAIN>.
      DATA BEGIN OF ORG_OBJECT OCCURS 0.
              INCLUDE STRUCTURE SWHACTOR.
      DATA END OF ORG_OBJECT.
      DATA: BEGIN OF NEW_AC_CONTAINER OCCURS 3.
              INCLUDE STRUCTURE SWCONT.
      DATA: END OF NEW_AC_CONTAINER.
      DATA: V_AMOUNT TYPE <AMOUNT FIELD>.
      DATA: V_MAIL_INDICATOR TYPE <FLAG>.
      REFRESH: actor_tab.
    Get the org-object under consideration. AMOUNT is the container name defined in your PFTC transaction
      SWC_GET_ELEMENT AC_CONTAINER 'AMOUNT' 'V_AMOUNT'.
    Get the org-object-type and the org-object id.
      SWC_GET_ELEMENT AC_CONTAINER 'MAIL_INDICATOR' V_MAIL_INDICATOR .
    Pass the org-object, the org-object-type and the org-object-id
    to a new container.
    The org object get a new name: ORG_AGENT.
      SWC_SET_ELEMENT NEW_AC_CONTAINER 'AMOUNT' 'V_AMOUNT'.
      SWC_SET_ELEMENT NEW_AC_CONTAINER 'MAIL_INDICATOR' V_MAIL_INDICATOR .
    check for V_AMOUNT and V_MAIL_INDICATOR.
    if the v_amount = 1000 .'
      if  v_mail_indicator = ' '.
        actor_tab-OTYPE = 'US'  .
        actor_tab-OBJID = 'SAPUSER1'.
        append actor_tab
      else.
        actor_tab-OTYPE = 'US'  . 
        actor_tab-OBJID = 'SAPUSER2'.
        append actor_tab
        actor_tab-OTYPE = 'US'  .
        actor_tab-OBJID = 'SAPUSER3'.
        append actor_tab
      endif.
    endif.
    Similarly write the logic for other conditions.
    This way you can use same for different purposes.
    If you pass the indicator that means you are sending mail to other approvers for information.
    Revert back if u need more help.
    Regards,
    Gautham

  • How to write select query for all the user tables in database

    Can any one tell me how to select the columns from all the user tables in a database
    Here I had 3columns as input...
    1.phone no
    2.memberid
    3.sub no.
    I have to select call time,record,agn from all the tables in a database...all database tables have the same column names but some may have additional columns..
    Eg: select call time, record,agn from ah_t_table where phone no= 6186759765,memberid=j34563298
    Query has to execute not only for this table but for all user tables in the database..all tables will start with ah_t
    I am trying for this query since 30days...
    Help me please....any kind of help is appreciated.....

    Hi,
    user13113704 wrote:
    ... i need to include the symbol (') for the numbers(values) to get selected..
    eg: phone no= '6284056879'To include a single-quote in a string literal, use 2 or them in a row, as shown below.
    Starting in Oracle 10, you can also use Q-notation:
    http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/sql_elements003.htm#i42617
    ...and also can you tell me how to execute the output of this script. What front end are you using? If it's SQL*Plus, then you can SPOOL the query to a file, and then execute that file, like this:
    -- Suppress SQL*Plus features that interfere with raw output
    SET     FEEDBACK     OFF
    SET     PAGESIZE     0
    -- Run preliminary query to generate main query
    SPOOL     c:\my_sql_dir\all_ah_t.sql
    SELECT       'select call time, record, agn from '
    ||       owner
    ||       '.'
    ||       table_name
    ||       ' where phone_no = ''6186759765'' and memberid = j34563298'
    ||       CASE
               WHEN ROW_NUMBER () OVER ( ORDER BY  owner          DESC
                              ,        table_name      DESC
                              ) = 1
               THEN  ';'
               ELSE  ' UNION ALL'
           END     AS txt
    FROM       all_tables
    WHERE       SUBSTR (table_name, 1, 4)     = 'AH_T'
    ORDER BY  owner
    ,       table_name
    SPOOL     OFF
    -- Restore SQL*Plus features that interfere with raw output (if desired)
    SET     FEEDBACK     ON
    SET     PAGESIZE     50
    -- Run main query:
    @c:\my_sql_dir\all_ah_t.sql
    so that i form a temporary view for this script as a table(or store the result in a temp table) and my problem will be solved..Sorry, I don't understand. What is a "temporary view"?

  • Assigning View permission to all the users that have been selected in contact selector - SP 2010, InfoPath 2010

    I have a SharePoint InfoPath 2010 browser form with item level security. Only submitter
    and approvers has access to the form.  This form contains a people picker that is populated with the names of attendees
    for the meeting they attended (which
    I am able to store in Field2 below). I want to allow attendees to be able to view (grant view permission) the InfoPath form. Field 2 has the users in form of domain\user1;domain\user2; etc. Following the below step, I am getting error when I ADD or REPLACE
    permission on current item. How do I go about assigning view permission to all the users that have been selected in contact selector?
    Jitu

    Hi ,
    i understand that the text box and the people picker hold multiple user names and you want to grant user permission based on the user in the text box.
    I have a test based on your description,the results are: When there are multiple users in the text box, the workflow will throw an error'Error Occurred'.It is the same with the people picker column.
    You need to limit the peopel picker to only allow to select one user,in this way the text box will only hold one user.Then you can use the people picker or the text box to grant user permission.
    Thanks,
    Entan Ming
    Entan Ming
    TechNet Community Support

  • Get details of all Milestones which are not billed as of date in PA module

    I want the correct QUERY which fetches details of all the milestones which are not billed as of the given date in PA module in Oracle applications 11i. For your information we are using PA type L.
    I have tried a lot but some join mismatch is happening. Forum please help. it is very urgent.
    My query is as follows:
    SELECT ppa.segment1 Project_code
    , ppa.NAME Project_name
    , TO_CHAR (ppa.start_date, 'DD-MON-YYYY') Project_start_date
    , TO_CHAR (ppa.completion_date, 'DD-MON-YYYY') Project_end_date
    , ppt.long_task_name Milestone_name
    , TO_CHAR (ppt.start_date, 'DD-MON-YYYY') Milestone_start_date
    , TO_CHAR (ppt.completion_date, 'DD-MON-YYYY') Milestone_end_date
    FROM ra_customers rac
    , pa_project_customers pc1
    , pa_projects_all ppa
    , pa_tasks ppt
         , pa_proj_elements ppe
         , pa_task_types ptt
         , pa_percent_completes ppc
         , pa_draft_invoice_items pdii
    WHERE ppt.completion_date <= NVL(:AS_OF_DATE,SYSDATE) + 2
    AND ppt.task_number NOT IN ('1', '2', '2.1', '2.2', '2.3')
    AND ppa.segment1 LIKE 'CSC%'                
    AND ppa.project_id = ppt.project_id
    AND ppa.template_flag = 'N'
    AND ppe.proj_element_id = ppt.task_id
    AND ppe.TYPE_ID = ptt.TASK_TYPE_ID
    AND ptt.TASK_TYPE = 'Milestone Task Type'
    AND pc1.customer_id = rac.customer_id
    AND pc1.project_id = ppa.project_id
    AND ppt.TASK_ID = ppc.TASK_ID(+)
    AND ( ppc.STATUS_CODE IS NULL OR ppc.STATUS_CODE <> 127 OR ppc.COMPLETED_PERCENTAGE <>100)
    AND TRUNC(ppt.COMPLETION_DATE - 2) <= TRUNC(NVL(:AS_OF_DATE,SYSDATE))
         AND ppa.project_id = pdii.project_id
         AND pdii.PROJECT_ID not in ppa.project_id
         AND ppt.TASK_ID not in pdii.TASK_ID
    Thanks in Advance
    Tina

    In order to do this in WebI, you would need to do the following:
    <p>
    1.  Create tables in a database to hold the data.
    2.  Create an application to pull the data out of the CMS using the Query Language.
    3.  Create a universe to read the data.
    4.  Create your report(s).
    <p>
    To get this information through the Query Builder, you would have to run a query something like this to get the data for each report:
    <p>
    Select SI_ID, SI_NAME, SI_PARENT_ID<br>
    from CI_INFOOBJECTS<br>
    where SI_KIND = 'Webi' and SI_INSTANCE_OBJECT = 0
    <p>
    You have to build Location based on parent ID values - for each report you would run this query for the returned SI_PARENTID value until SI_PARENTID = 0
    <p>
    Select SI_NAME, SI_PARENT_ID<br>
    from CI_INFOOBJECTS<br>
    where SI_ID = [SI_PARENT_ID value from the previous query.]
    <p>
    To get the recurring schedules, you need to query based on the SI_ID for each report:
    <p>
    Select count(SI_ID)<br>
    from CI_INFOOBJECTS<br>
    where SI_PARENT_ID = [SI_ID value for the report]<br>
      and SI_SCHEDULE_STATUS = 9
    <p>
    Change the Schedule_Status to 1 to get the count of the successful instances.
    <p>
    To get the person who created the schedule, get the SI_OWNERID of the instance and run this query:
    <p>
    Select SI_NAME<br>
    from CI_SYSTEMOBJECTS<br>
    where SI_ID = [SI_OWNERID for the schedule.]<br>
    <p>
    And so on....As you can see, it gets pretty complicated.
    <p>
    You can't just query the CMS database directly because almost all of this information is stored in a proprietary binary format in BLOB fields in the database.
    <p>
    -Dell
    Edited by: Dell Stinnett on Aug 10, 2010 3:00 PM

Maybe you are looking for

  • Open GR/IR question

    Dear Guru's, We were able to load the GR/IR balances to a dummy takeover account using LSMW direct input program RM06EEI1 Scenario was: PO = 100 EA GR has already happend for 50 EA in legacy, so Open GR was loaded for 50 EA Invoice qty in legacy = 0,

  • Batch processing in Quark 7 - how to avoid "missing font" interrruptions?

    I have a time scheduled applescript which opens a folder of quark files, does some processing using a quark extension, closes each file and moves it to a separate location. Problem is I get these "Filename uses fonts not installed in your system" dia

  • Insert new entry on SD Document Flow

    Hi,     I'm trying to insert a new entry on SD document without success. Actually I'm trying to use the function SD_DOCUMENT_FLOW_MAINTAIN but it's not working, I don't know what I'm missing. I've tried this one as well: RV_DOCUMENT_FLOW_ADD.     I h

  • How do you force LR to start in 64 bit?

    How do you force LR to start in 64 bit? I have Windows 7 64-bit and also downloaded LR 64 bit. But I don't see "x64" in the LR title bar. http://helpx.adobe.com/lightroom/kb/optimize-performance-lightroom.html Can you force LR to start in 64 bit mode

  • HT4528 How do I permanently delete my messages?

    When I go to settings-usage it shows 977mb stored in messages. I have deleted all messages in my message box and can't figure out how to permanently get rid of this wasted space. Please help!