1

To query my organization, I usually use this REST route. However, I receive records from both my organization and communities. I would like to scope my query to a specific community. I tried following directives from here but as you can see, this is from the Chatter API documentation and seems to only work with Chatter routes.

I authenticated with a "Modify All Data" profile to the community login endpoint and performed the request:

https://enterpriseeditiontest.force.com/services/data/v31.0/connect/communities/[Id]/soql?q=...

And the API returns:

[
  {
    "errorCode": "NOT_FOUND",
    "message": "The requested resource does not exist"
  }

]

Am I missing something?

1 Answer 1

2

@Jodi, what are you trying to query?

If you're looking for chatter feeds that are specific to one community, then the documentation you're reading should give you the data you need. However, with other records (e.g., Leads, Accounts, Contacts, Cases), the concept of communities does not apply. Standard security and visibility settings control what records will be returned when a user executes a SOQL query.

So, if you're looking for a regular record you should just use the normal SOQL resource to get the data you need, applying WHERE criteria as needed.

2
  • To answer your question "what are you trying to query?", I would like to fetch all records of object X when object X is available in a community Y. For example, if Case records are available in MyCommunity, I would like to do SELECT Id FROM Case in the context of MyCommunity. So I guess that a workaround would be to query using a user that have limited access to MyCommunity, right?
    – Jodi
    Aug 6, 2014 at 19:15
  • Hello, Jodi, to clarify, records (other than Chatter feeds) are not secured by community. So more accurately, you will be able to get SELECT Id FROM Case in the context of a user's Profile and Role. From there on, you are right: You would be able to see what a user in a particular profile and role would see, if you run the query as that user (or if that user runs the query).
    – Marty C.
    Aug 7, 2014 at 0:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .