Password Pusher Logo
Password Pusher Go Ahead. Email Another Password.

Password Pusher API v2

Volledige JSON API-documentatie voor het aanmaken, ophalen en beheren van pushes in de open-source editie.

Authenticatie

Authenticeer verzoeken met een Bearer-token in de Authorization-header.

Maak een API-token aan in je accountinstellingen op /users/token.

Authorization: Bearer YOUR_API_TOKEN
  • Openbare eindpunten: GET /api/v2/version, GET /api/v2/pushes/:url_token, GET /api/v2/pushes/:url_token/preview
  • Geauthenticeerde eindpunten: GET /api/v2/pushes/:url_token/audit, GET /api/v2/pushes/active, GET /api/v2/pushes/expired
  • Instelling voor anonieme toegang: Wanneer anonieme pushmeldingen zijn uitgeschakeld, vereisen API-eindpunten authenticatie.

Basis URL

Alle eindpunten zijn relatief ten opzichte van uw installatiehost:

https://secret.jellelampaert.be/api/v2

Versie-eindpunt

GET /api/v2/version

Retourneert de API-versie, applicatiegegevens en een hash met kenmerken die aangeven welke mogelijkheden op deze instantie zijn ingeschakeld.

cURL-voorbeeld:

curl -X GET https://secret.jellelampaert.be/api/v2/version
{
  "application_version": "2.6.5",
  "api_version": "2.1",
  "edition": "oss",
  "features": {
    "anonymous_access": true,
    "api_token_authentication": true,
    "accounts": {
      "enabled": false
    },
    "pushes": {
      "enabled": true,
      "email_auto_dispatch": false,
      "file_attachments": {
        "enabled": true,
        "requires_authentication": true
      },
      "url_pushes": {
        "enabled": true
      },
      "qr_code_pushes": {
        "enabled": true
      }
    },
    "requests": {
      "enabled": false
    }
  }
}

Kenmerken Hash

  • anonymous_access - Of anoniem API-gebruik is toegestaan (Settings.allow_anonymous)
  • api_token_authentication - Ondersteuning voor verificatie met draagtoken
  • accounts.enabled - Beschikbaarheid van de Accounts API (niet beschikbaar in OSS)
  • pushes.enabled - Push aanmaken en beheren via API
  • pushes.file_attachments.enabled - Bestandsbijlagen bij pushes (Instellingen.Bestandspushes inschakelen)
  • pushes.url_pushes.enabled - URL-pushtype (Instellingen.URL-push inschakelen)
  • pushes.qr_code_pushes.enabled - QR-code push-type (Instellingen.qr_pushes inschakelen)
  • requests.enabled - Beschikbaarheid van de Requests API (niet beschikbaar in OSS)

Push-eindpunten

POST /api/v2/pushes

Start een nieuwe push.

Tekstindeling: { "push": { ... } }

Parameter Type Vereist Beschrijving
payloadstringJaGeheime tekstpayload voor pushberichten met tekst, URL's of QR-codes.
filesarrayNeeTe koppelen bestanden. Indien aanwezig, wordt het push-type 'bestand', tenzij het type expliciet is opgegeven.
kindstringNeeVerzendtype: tekst, bestand, URL of QR-code. Standaard wordt tekst gebruikt als er geen type wordt opgegeven.
expire_after_daysintegerNeeVervaldatum in dagen. Indien weggelaten, worden de standaardinstellingen van de instantie gebruikt.
expire_after_viewsintegerNeeMaximaal toegestaan aantal ophaalacties. Indien weggelaten, worden de standaardwaarden van de instantie gebruikt.
deletable_by_viewerbooleanNeeHiermee kan de ontvanger de pushmelding laten verlopen.
retrieval_stepbooleanNeeVoegt een extra bevestigingsstap voor het ophalen toe.
passphrasestringNeeHiervoor is deze wachtzin vereist om de gegevens op te halen.
namestringNeeOptioneel label dat aan de eigenaar wordt getoond.
notestringNeeOptionele notitie, alleen voor de eigenaar.
{
  "push": {
    "payload": "my-secret",
    "expire_after_days": 1,
    "expire_after_views": 5,
    "passphrase": "optional-passphrase",
    "deletable_by_viewer": true,
    "retrieval_step": true
  }
}

cURL-voorbeeld (JSON-body):

curl -X POST https://secret.jellelampaert.be/api/v2/pushes \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "push": {
      "payload": "my-secret",
      "expire_after_days": 1,
      "expire_after_views": 5
    }
  }'

GET /api/v2/pushes/:url_token

Haal een push-payload op aan de hand van een token. Dit telt als een weergave en de push kan verlopen wanneer de limieten zijn bereikt.

Queryparameters: passphrase (Optioneel, vereist wanneer de pushmelding met een wachtwoord is beveiligd.)

cURL-voorbeeld:

curl -X GET https://secret.jellelampaert.be/api/v2/pushes/YOUR_URL_TOKEN

GET /api/v2/pushes/:url_token/preview

Retourneert de volledig gekwalificeerde geheime URL voor een pushmelding zonder de payload op te halen.

cURL-voorbeeld:

curl -X GET https://secret.jellelampaert.be/api/v2/pushes/YOUR_URL_TOKEN/preview

GET /api/v2/pushes/:url_token/audit

Retourneer auditlogboekvermeldingen voor een push. Authenticatie en eigendom zijn vereist.

Queryparameters: page (optioneel, geheel getal, standaardwaarde 1, geldig bereik 1 tot 200)

cURL-voorbeeld:

curl -X GET "https://secret.jellelampaert.be/api/v2/pushes/YOUR_URL_TOKEN/audit?page=1" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

DELETE /api/v2/pushes/:url_token

Een pushmelding direct laten verlopen. Toegestaan voor eigenaren (na authenticatie) of voor ontvangers wanneer de pushmelding is aangemaakt met de optie 'verwijderbaar door kijker' ingeschakeld.

cURL-voorbeeld:

curl -X DELETE https://secret.jellelampaert.be/api/v2/pushes/YOUR_URL_TOKEN \
  -H "Authorization: Bearer YOUR_API_TOKEN"

GET /api/v2/pushes/active

Toon een lijst met actieve pushmeldingen voor de ingelogde gebruiker.

Queryparameters: page (optioneel, geheel getal, standaardwaarde 1, geldig bereik 1 tot 200)

cURL-voorbeeld:

curl -X GET "https://secret.jellelampaert.be/api/v2/pushes/active?page=1" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

GET /api/v2/pushes/expired

Lijst met verlopen pushmeldingen voor de ingelogde gebruiker.

Queryparameters: page (optioneel, geheel getal, standaardwaarde 1, geldig bereik 1 tot 200)

cURL-voorbeeld:

curl -X GET "https://secret.jellelampaert.be/api/v2/pushes/expired?page=1" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

HTTP-statuscodes

  • 200 - Succesvolle aanvraag
  • 201 - Push gemaakt
  • 400 - Ongeldige verzoekparameters
  • 401 - Authenticatie vereist of ongeldig token
  • 403 - Verboden voor de huidige gebruiker
  • 404 - Bron niet gevonden
  • 422 - Validatiefout

Voor documentatie over de oudere API v1, zie /api.