Ga naar hoofdinhoud

Newsfeeds API

De Newsfeeds API biedt endpoints voor het beheren van RSS/Atom newsfeeds in Joomla.

Base URL

/api/index.php/v1/newsfeeds

Endpoints Overzicht

MethodeEndpointBeschrijving
GET/newsfeeds/feedsAlle newsfeeds ophalen
GET/newsfeeds/feeds/{id}Specifieke newsfeed ophalen
POST/newsfeeds/feedsNieuwe newsfeed aanmaken
PATCH/newsfeeds/feeds/{id}Newsfeed bijwerken
DELETE/newsfeeds/feeds/{id}Newsfeed verwijderen

Alle newsfeeds ophalen

GET /api/index.php/v1/newsfeeds/feeds

Response

{
"data": [
{
"type": "newsfeeds",
"id": "1",
"attributes": {
"name": "Joomla Nieuws",
"alias": "joomla-nieuws",
"link": "https://www.joomla.org/announcements.feed",
"catid": 5,
"numarticles": 5,
"published": 1,
"description": "Officiële Joomla aankondigingen",
"language": "*"
}
}
]
}

Specifieke newsfeed ophalen

GET /api/index.php/v1/newsfeeds/feeds/{id}

Parameters

ParameterTypeBeschrijving
idintegerNewsfeed ID

Voorbeeld

curl -X GET "https://jouwesite.nl/api/index.php/v1/newsfeeds/feeds/1" \
-H "X-Joomla-Token: JOUW_API_TOKEN"

Newsfeed aanmaken

POST /api/index.php/v1/newsfeeds/feeds

Request Body

{
"name": "Tech Nieuws",
"alias": "tech-nieuws",
"link": "https://example.com/feed.rss",
"catid": 5,
"numarticles": 10,
"published": 1,
"description": "Laatste tech nieuws",
"access": 1,
"language": "*"
}

Verplichte velden

VeldTypeBeschrijving
namestringNaam van de newsfeed
linkstringURL naar de RSS/Atom feed
catidintCategorie ID

Optionele velden

VeldTypeStandaardBeschrijving
aliasstringautoURL-vriendelijke naam
numarticlesint5Aantal artikelen te tonen
publishedint1Publicatiestatus
descriptionstring""Beschrijving
accessint1Toegangsniveau
languagestring"*"Taalcode
orderingint0Volgorde

Voorbeeld

curl -X POST "https://jouwesite.nl/api/index.php/v1/newsfeeds/feeds" \
-H "X-Joomla-Token: JOUW_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "BBC Nieuws",
"link": "http://feeds.bbci.co.uk/news/rss.xml",
"catid": 5,
"numarticles": 10
}'

Newsfeed bijwerken

PATCH /api/index.php/v1/newsfeeds/feeds/{id}

Request Body

{
"numarticles": 15,
"description": "Bijgewerkte beschrijving"
}

Voorbeeld

curl -X PATCH "https://jouwesite.nl/api/index.php/v1/newsfeeds/feeds/1" \
-H "X-Joomla-Token: JOUW_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"numarticles": 15
}'

Newsfeed verwijderen

DELETE /api/index.php/v1/newsfeeds/feeds/{id}

Voorbeeld

curl -X DELETE "https://jouwesite.nl/api/index.php/v1/newsfeeds/feeds/1" \
-H "X-Joomla-Token: JOUW_API_TOKEN"

Newsfeed States

WaardeStatus
-2Prullenbak
0Niet gepubliceerd
1Gepubliceerd
2Gearchiveerd

Newsfeed Categorieën

Newsfeeds worden georganiseerd in categorieën.

Categorieën ophalen

GET /api/index.php/v1/newsfeeds/categories

Categorie aanmaken

POST /api/index.php/v1/newsfeeds/categories
{
"title": "Technologie Feeds",
"alias": "technologie-feeds",
"description": "RSS feeds over technologie"
}

Filtering

Op categorie

GET /api/index.php/v1/newsfeeds/feeds?filter[catid]=5

Op publicatiestatus

GET /api/index.php/v1/newsfeeds/feeds?filter[published]=1

Zoeken

GET /api/index.php/v1/newsfeeds/feeds?filter[search]=nieuws

Feed Formaten

De API ondersteunt de volgende feed formaten:

FormaatBeschrijving
RSS 2.0Meest gebruikte RSS formaat
RSS 1.0Ouder RDF-gebaseerd formaat
AtomModern alternatief voor RSS
tip

Controleer of de feed URL correct is en toegankelijk voordat je een newsfeed aanmaakt. Ongeldige URLs zorgen voor errors bij het weergeven.

Voorbeeld: Meerdere feeds toevoegen

# Voeg meerdere feeds toe in een script
feeds=(
"https://feeds.bbci.co.uk/news/technology/rss.xml|BBC Tech"
"https://rss.nytimes.com/services/xml/rss/nyt/Technology.xml|NYT Tech"
)

for feed in "${feeds[@]}"; do
IFS='|' read -r url name <<< "$feed"
curl -X POST "https://jouwesite.nl/api/index.php/v1/newsfeeds/feeds" \
-H "X-Joomla-Token: JOUW_API_TOKEN" \
-H "Content-Type: application/json" \
-d "{\"name\": \"$name\", \"link\": \"$url\", \"catid\": 5}"
done