this post was submitted on 14 Jun 2023
21 points (100.0% liked)

Programming

3347 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 1 year ago
MODERATORS
 

I'm looking for examples of calls to the Lemmy API.. I've been to the following link in the documentation:

https://join-lemmy.org/docs/en/contributors/04-api.html

However I don't see any direct examples of uses of the API for common cases, like creating a post, creating a comment or getting either type of item. Some of the linked documentation from that page points to what I believe is typescript code for interfaces, but that does not really have examples of actually calling those interfaces. I can make some logical guesses at to what the calls should be, but I don't have a way to really verify this yet.

Does anyone have some working examples they can post?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 1 year ago* (last edited 1 year ago) (2 children)

Here's a kind of guess on how to create a post using python's requests library:

import requests
import json

# Define the URL for the API endpoint
url = "https://lemmy.ml/api/v1/post"

# Define the headers for the request
headers = {'Content-Type': 'application/json'}

# Define the data for the new post
data = {
 "name": "Your Post Title",
 "community_id": 123,  # Replace with your community ID
 "url": "https://your-url.com",  # Optional
 "body": "Your post content",  # Optional
 "nsfw": False,  # Optional
 "language_id": 1,  # Optional, replace with your language ID
 "auth": "your_auth_token_here"
}

# Send the POST request
response = requests.post(url, headers=headers, data=json.dumps(data))

# Print the response
print(response.json())

Does this look right? I understand that I'll have to authenticate to the server to do this, but I'm really not sure how to do that.

[–] [email protected] 3 points 1 year ago (1 children)

Very jank response because I’m on my phone!

Looks like you’ll need to POST the header Auth with the token you receive as a LoginResponse https://join-lemmy.org/api/interfaces/LoginResponse.html

(Brb for an edit)

[–] megaman1970 1 points 1 year ago

Cool. Then my other answer is correct. I appreciate the help!