Answers.Body: <p>Take a look at the docs for checksums: <a href="https://docs.civicrm.org/user/en/latest/common-workflows/tokens-and-mail-merge/#checksum" rel="nofollow noreferrer">https://docs.civicrm.org/user/en/latest/common-workflows/tokens-and-mail-merge/#checksum</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T00:41:58.100Z
Answers.Text: I understand that this solves the main point of my problem, but these links can only be sent by email and they also expire. That could make things difficult because some contacts were registered with wrong emails.
Answers.UserDisplayName: Suri Gang's Hallen
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T01:33:17.967Z
Answers.Text: You can also manually generate a checksum for a contact using Support - Api4 explorer with entity Contact and action getChecksum. Then put that in the url in place of the token from the docs.
Answers.UserDisplayName: Demerit
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T01:35:01.257Z
Answers.Text: I don't really understand the email comment though - how would you be sending these links to them?
Answers.UserDisplayName: Demerit
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T01:43:01.843Z
Answers.Text: The URL I need is the following: http://example.org/civicrm/profile/edit?reset=1&gid=IDNUMBER&{contact.checksum}&id={contact.contact_id}, however I understand that the { } are tokens for the CiviMail component. I don't understand when the previous URL works so that an anonymous user can edit the profile information with the corresponding ID in the URL
Answers.UserDisplayName: Suri Gang's Hallen
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T02:02:05.980Z
Answers.Text: At api4 explorer, run the contact.getchecksum api call putting in the desired contact id. That will give you a checksum. Put that and the contact id into your url in place of the {} tokens.
Answers.UserDisplayName: Demerit
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T08:38:27.927Z
Answers.Text: If you don't use checksums, your proposed solution allows _any_ unauthenticated user to change these fields for _any_ contact just by changing the id in the URL.  That's bad!
Answers.UserDisplayName: Aidan
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T18:38:47.947Z
Answers.Text: @Aidan I know it's bad but it's exactly what I need :(
Answers.UserDisplayName: Suri Gang's Hallen
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-02T19:15:10.343Z
Answers.Text: @Demerit I have tried but when I receive the verified link and click on it, the page is displayed with this legend "No results of the type have been found."
Answers.UserDisplayName: Suri Gang's Hallen
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-03T01:01:55.210Z
Answers.Text: Might have something to do with the fields configured on the profile? Or maybe there is more information about the error in [ConfigAndLog](https://civicrm.stackexchange.com/questions/15931/where-are-the-configandlog-and-templates-c-directories)?
Answers.UserDisplayName: Demerit
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2023-02-01T21:42:32.967Z
Answers.LastActivityDate: 2023-02-01T21:42:32.967Z
Answers.UserDisplayName: Demerit
Body: <p>The question is simple:</p>
  <p>I have created a profile, but I would like to share a URL to the anonymous user so they can fill out the profile <strong>WITHOUT LOGGING IN</strong> and these responses will go to their contact.</p>
  <p>Do you know if there is a way to do it by sharing the ID by URL, as if it were a GET method?</p>
  <p>The url to the profile could be something like this:</p>
  <p><a href="https://my.page/civicrm/profile/edit/?gid=22&amp;reset=1&amp;id=123" rel="nofollow noreferrer">https://my.page/civicrm/profile/edit/?gid=22&amp;reset=1&amp;id=123</a></p>
  
Tags: <contacts><profile><user><checksum><urls>
Title: Allow anonymous users (not logged in) to edit their fields?
ThreadText: # Allow anonymous users (not logged in) to edit their fields?
  
  (Asked by: username_0 on 2023-02-01)
  
  The question is simple:
  
  I have created a profile, but I would like to share a URL to the anonymous user so they can fill out the profile **WITHOUT LOGGING IN** and these responses will go to their contact.
  
  Do you know if there is a way to do it by sharing the ID by URL, as if it were a GET method?
  
  The url to the profile could be something like this:
  
  <https://my.page/civicrm/profile/edit/?gid=22&reset=1&id=123>
  
  **Tags:** contacts, profile, user, checksum, urls
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2023-02-01. Score: 1
  
  Take a look at the docs for checksums: <https://docs.civicrm.org/user/en/latest/common-workflows/tokens-and-mail-merge/#checksum>
  
  > **Comments:**
  > **username_0**: I understand that this solves the main point of my problem, but these links can only be sent by email and they also expire. That could make things difficult because some contacts were registered with wrong emails.  
  > **username_1**: You can also manually generate a checksum for a contact using Support - Api4 explorer with entity Contact and action getChecksum. Then put that in the url in place of the token from the docs.  
  > **username_1**: I don't really understand the email comment though - how would you be sending these links to them?  
  > **username_0**: The URL I need is the following: http://example.org/civicrm/profile/edit?reset=1&gid=IDNUMBER&{contact.checksum}&id={contact.contact_id}, however I understand that the { } are tokens for the CiviMail component. I don't understand when the previous URL works so that an anonymous user can edit the profile information with the corresponding ID in the URL  
  > **username_1**: At api4 explorer, run the contact.getchecksum api call putting in the desired contact id. That will give you a checksum. Put that and the contact id into your url in place of the {} tokens.  
  > **username_2**: If you don't use checksums, your proposed solution allows _any_ unauthenticated user to change these fields for _any_ contact just by changing the id in the URL.  That's bad!  
  > **username_0**: @username_2 I know it's bad but it's exactly what I need :(  
  > **username_0**: @username_1 I have tried but when I receive the verified link and click on it, the page is displayed with this legend "No results of the type have been found."  
  > **username_1**: Might have something to do with the fields configured on the profile? Or maybe there is more information about the error in [ConfigAndLog](https://civicrm.stackexchange.com/questions/15931/where-are-the-configandlog-and-templates-c-directories)?  
  
  ---
  
  