Rita inn

195 Lond3.400.716 Staðir3.004.607+ Listafólkasíður 11.023.107+ Fyritøkusíður · Tøkt á 417+ málum

Partner API - Schnell byrjun

Tín fyrste sambinding passar á einari skíggjam.

Royn hann nú - einki lykil, einki tilmeldi

Lat hesa atsetur upp í tínum kagara. Tú fær brúk fyri samstundis atstæðum umvegu.

https://timtim.live/api/partner-network/demo?city=Washington
  1. 1

    Fá ein testlykil

    Log inn, seg at við, hvør tú ert, og trýst Stovna Test Key. Hendar byrji við tt_test_ og einans ser samstundis atstæður.

  2. 2

    Finn atburðar

    Leita um at hava at atburðarar í einari borg.

    curl "https://api.timtim.live/v1/events?city=Washington&category=music" \
      -H "Authorization: Bearer tt_test_YOUR_KEY"
  3. 3

    Vís atburði

    Allur viðburðar hava eitt navn, dagur, stað, mynd, prís og undirsøðumsetjar til tínar kortið.

  4. 4

    Nýt bu_rturin

    Nýt bui_rturturtur teir hava hjálp. Hetta er det. TimTim.Live umgøp viðhøvaðsløgs í hinum leinkja.

  5. 5

    Sýn merkin

    Hygg at persónar sendast, eltimillar selldari og innrivin á tínum instrumentama og spørja eftir þeim.

    GET https://api.timtim.live/v1/earnings

TimTim.Live Støða

Tilvísing

Hvar á at senda umbøndir

https://api.timtim.live/v1

Tín sambindingslykil

Send tínar lyklar í autorisunarhøvdinu. Royn lyklar (tt_test_) sjá einans samstundis atstæður. Netsidesnøglar (t_pk_live_) kunna sitja í einari vefsíða og einans lesa atburðar. Ambætara lyklar (t_sk_live_) verbið á ambætaran og kann og lesa innriw. Weir sýna ein lykla ein gangin - varðveitað hann tryggan.

curl
curl "https://api.timtim.live/v1/events?city=Washington&category=music" \
  -H "Authorization: Bearer tt_test_YOUR_KEY"
JavaScript
const res = await fetch("https://api.timtim.live/v1/events?city=Washington&category=music", {
  headers: { Authorization: "Bearer tt_test_YOUR_KEY" },
});
const { events, next } = await res.json();
for (const event of events) {
  console.log(event.name, event.display.date_label, event.tickets.buy_url);
}
Node
// Node 18+ — keep server keys (tt_sk_live_) on the server
const res = await fetch("https://api.timtim.live/v1/events?city=Washington", {
  headers: { Authorization: `Bearer ${process.env.TIMTIM_KEY}` },
});
if (!res.ok) {
  const problem = await res.json();
  throw new Error(`${problem.title} (${problem.request_id})`);
}
const { events } = await res.json();
Python
import os, requests

res = requests.get(
    "https://api.timtim.live/v1/events",
    params={"city": "Washington", "category": "music"},
    headers={"Authorization": f"Bearer {os.environ['TIMTIM_KEY']}"},
)
res.raise_for_status()
for event in res.json()["events"]:
    print(event["name"], event["tickets"]["buy_url"])
PHP
<?php
$ch = curl_init("https://api.timtim.live/v1/events?city=Washington&category=music");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: Bearer " . getenv("TIMTIM_KEY")]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
foreach ($data["events"] as $event) {
  echo $event["name"] . " " . $event["tickets"]["buy_url"] . PHP_EOL;
}

Filtur

city
Atburðar í þessum borgari.
country
Twa-letter landskota, t.d. US.
category
For t.d. tónlist, festival eða konferanse.
from
Umvælanir við eða eftir at núverandi dag er (2026-10-20).
to
Atburðarar við eða fyrri hesin dag.
changed_since
Einans atburðarar sem eru broytt eftir at tað er liðin.
commissioned
true = Einans atburðarar sem gjaldt einum launa.
minimum_earnings
Einans atburðarar sem gæla minsta lagi.
near
Ein stað, t.d. nær=Paris,FR.
limit
Hvussu nógvir atburðarar í síða, 1 til 100 (20) um tú at fara tað út).

Einans hvussu broytt

Broyt tínar síðustu samsettingarstundin og send tað aftur sum broy_oviti. Tú fær einans atstæður sem eru broytt - t.d. umbøtur og selldari framsýningar. Einki Webhook þarfnast. Hendingar tú verður at hætta at sýnast aftur í tekna lista.

GET https://api.timtim.live/v1/events?changed_since=2026-10-06T10:00:00Z

Meiri enn ein síða

Um svarið har næst, send tað til baka sem vísir=til at fá næstu síða. Næsti er tómt, hasin alt.

GET https://api.timtim.live/v1/events?city=Paris&cursor=eyJtIjoiZCIs…

job

Sérhver atburður hefur entynst. Um teningi. Keitabelt er falskur, bøttaran hefur einki umbøn - het er enn eina vertu til at sýna. Um tað er satt, tændu.description segnar wat tú fært, t.d. "$5 pro greitbar bøtta". Um kjøpið er endurgreitt, so er umbunin vänt aftur.

Bulk feeds (allur hluti í einni fílu)

Spar eina einstimmalmikla fóðing á instrumentama. Þá niðurtøka allar atburðarar tekningar í einari zippaðu fílu, við ambætaranøkl: GET /v1/bulk/FEED_ID.ndjson.gz eða .csv.gz. Legg til ?changed_sov= fyri eina broytta, inndælandi atburðar teknir niður. Royn lyklar kunna Royn tað nú; bein nýtslu þarf ein TimTim.Live gagn.

GET https://api.timtim.live/v1/bulk/bfs_YOURFEED.ndjson.gz?changed_since=2026-10-06T00:00:00Z

Sellbittar í tínum eigin appløgu (sembedd samning)

Stórir samstarfsmenn kunna varðveita kagara í hvørri eigin app. Spørg GET /v1/events/EVENT_ID/tickets til hva er á útsal, síðan POST /v1/orders við kagaraval. Tú fær eina TimTim.Live teknindi til at opna fyri kagara; sölan er krákrað til tínar fyrirtækið beinat. Royn lyklar kunnu Royn það nú. Levlig nýtsla þarf eina TimTim.Live teknindi og kortabetalingar, tusett á.

POST https://api.timtim.live/v1/orders  (Idempotency-Key: …)  {"event_id": "evt_test_washington_konpa", "ticket_type_id": "tt_test_washington_konpa", "quantity": 2, "buyer_email": "…", "buyer_name": "…"}

Card- bundið viðskipanir (bankar og goymdrásir)

GET /v1/offers Sýnir sérhverjum atburði at greiða einari laun fyri eitt boðn. Séry boðin hevur organisatorinn, dagarnar tú kannst kapa, prýðið, staðinn og umælið. Tínki viðskiptavinur virkjar það fyri eftirlitaðan leinkja, og gjaldið verður gjaldið til tínarfyrisiting fyri /v1/earning. Royn lyklar sjá sýndari boð. Liv offers brúk eina TimTim.Live gagn. Passandi kortabetalingar beinat þarfnast einari samning við eitt kort net eða banka, og er ikki sambundið.

GET https://api.timtim.live/v1/offers?country=US

Atburðarstatus og Ticketar

standur er skrásett, útsett, byrjunarløð, afturtøkt, seld_útt eða liðug. Bílar eru tøkar, takmarkað, seld'útt_úr, ikki_on_sale eða endinað. Nær ein atburður er martað, taka tað niður.

GET https://api.timtim.live/v1/events/evt_test_washington_konpa

Hvussu hraðan tú kannt biðjast

Royn lyklar: 60 tørvar eitt minutt. Live lyklar: 120 mínútur. Fyri hraðar fær ein 429 svar við Prøvd aftur, hvør tal av sekúndur at bíða.

Hesin atburðarar tú får

Hendingar at TimTim.Live organisatorar stovna og vel at deila. Hendan teir eru ikki skrásett úr öðrum penteinstadum, tí teir hava ikki egnað rétt til at deila tað.

Hvussu eg aldrei senda

Käunarnavn, t-post adresser, heimaadresser, tlf. tal og kort upplýsing. Partner API felagir atkomuligheit, ikki limirnir.

Netsvæðishandsamingari

Ein linju av HTML Sýnir atburðar á einari vefsíðu. Nýt eina heimasíðulykil (tt_pk_live_) og set tínar heimasíðu til loyvda lista hjá lyklinum. Á einki lyklinum Sýnir samstundisavgreiðingar.

<script src="https://timtim.live/widget/events.js"
        data-key="tt_pk_live_YOUR_WEBSITE_KEY"
        data-city="Washington" data-category="music" async></script>

kostir: dátustætl, dátustovns, dátsu-kategori, dátungsmark (1-24), dátustjarn="true", dát-lang og dátustýri-litur.

OAuth 2.0 (størri samsetting)

Valdráttur. Meitsje ein OAuth viðskiftara á tínum instrumentaborðinu. Teldus tínar viðskiftara ID og leyndi fyri eitt atgongdartákn at vara seinasta ein tíma. Send títt tekn í staðin av einari lykli. Leyndin er ikki beinari við API samtala, og tú kan biðja um færri millumrúm enn viðskiftarinn har.

# 1. Trade the client ID and secret for a one-hour token
curl -u "$CLIENT_ID:$CLIENT_SECRET" \
  -d grant_type=client_credentials -d "scope=events:read events:details" \
  https://api.timtim.live/v1/oauth/token
# → {"access_token":"tt_at_…","token_type":"Bearer","expires_in":3600,"scope":"events:read events:details"}

# 2. Use the token exactly like a key
curl -H "Authorization: Bearer $ACCESS_TOKEN" "https://api.timtim.live/v1/events?city=Washington"

Til at leggja fram eitt tekn snem, POST tað til /v1/oauth/revolve við sama viðskiftara ID og leyndi. Switch viðskiftaren útgáv á teknindina og endar allar teknindinar samstundis.

Læs eina lykla til tínar ambætarar

Valdráttur. Á tínum dashboard, finna einari ambætara lykl, test lykl eller OAuth viðskiftara. Opna "Lás til mina ambætarar" og list upp tínar ambætarars tøkar atsetur. Kallar — og tekni umbønindi — úr öllum öðrum búnum verður nektað við ip_not_løgað, ella við høgra lyklinum.

Klientatlýsingar (mTLS), fyrir bøtta fyrirtæki: gríp um at tínar ambætarans ID-kort (ein prógv) og set tað inn til einari lykil. Þá kaeldi https://api.tim.livin við tað. Teir svara einans ambætaran hevur at váttana.

# Your certificate's SHA-256 — paste this (or the PEM) under "Lock to my servers"
openssl x509 -in client.crt -noout -fingerprint -sha256

# Every call then presents the certificate
curl --cert client.crt --key client.key \
  -H "Authorization: Bearer $KEY" "https://api.timtim.live/v1/events?city=Washington"

WordPress innleggur

Nýt WordPress? Legg inn TimTim.Live Atburðar: ein blokka og einari shortcode at sýna at viðburðarar við tínar eiga TimTim.Live fløguleiðis. Det er gjort av TimTim.Live, tal einans við tim.live, og oppdateringar einans úr tim.life.

Set upp fíluna í viðleggjum → Legg aftur nýggj → uppløguinnlegg. Lim inn tínar heimaseturlykil í stillingar → TimTim.Live Atburðar og þrýsta Test sambindingu. Legg síðan TimTim.Live Event blokkin til ónliga síða.

Niðurtøka WordPress Plugin
[timtim_events city="Washington" category="music" limit="6"]

Rásir

Sama atburðararnir sum JSON Feed, RSS, XML, CSV eða einari kalendarisfíla (.ics). Google kalendar, Apple Calendar og Outlook kunna nýta kalendarann. Feed lesarnir kunna ikki senda tekshøvd, svo set eina heimaside-lykil eða ein testlykil í ?key=. Aldrei set ein ambætara lykil í einari leinkja.

https://timtim.live/v1/feeds/events.json?key=tt_pk_live_YOUR_KEY&city=Paris
https://timtim.live/v1/feeds/events.rss?key=tt_pk_live_YOUR_KEY&city=Paris
https://timtim.live/v1/feeds/events.xml?key=tt_pk_live_YOUR_KEY&city=Paris
https://timtim.live/v1/feeds/events.csv?key=tt_pk_live_YOUR_KEY&city=Paris
https://timtim.live/v1/feeds/events.ics?key=tt_pk_live_YOUR_KEY&city=Paris

Webhooks

Legg inn ein atsetur á tínar dashbordið og sendum hann eina boð tá tá broytingarnar: event.changed or lanning.ached. changed. Webhooks er valið - bro_ygtigur _seinki veita tú sama upplýsing.

{
  "id": "whd_8Fk2mQxR7tLp",
  "type": "event.changed",
  "created_at": "2026-10-06T15:04:05.000Z",
  "mode": "live",
  "data": {
    "event": {
      "id": "ev_…",
      "name": "…",
      "status": "cancelled",
      "tickets": {
        "availability": "ended",
        "buy_url": "https://timtim.live/b/…"
      },
      "…": "the same event object as GET /v1/events"
    }
  }
}

Koyr eina boð: teir er undirskrivað við leyndin. Nega eitthvað eldri enn fem mínútur, og hungar ein TimTim-Delivery-Id teir hava longur handað.

// Node — Express with the RAW body (do not JSON.parse before checking)
import crypto from "node:crypto";

app.post("/timtim", express.raw({ type: "application/json" }), (req, res) => {
  const header = req.get("TimTim-Signature") ?? "";           // t=1700000000,v1=<hex>
  const parts = Object.fromEntries(header.split(",").map((p) => p.split("=")));
  const body = req.body.toString("utf8");
  const expected = crypto.createHmac("sha256", process.env.TIMTIM_WEBHOOK_SECRET)
    .update(`${parts.t}.${body}`).digest("hex");
  const fresh = Math.abs(Date.now() / 1000 - Number(parts.t)) <= 300;
  const same = expected.length === (parts.v1 ?? "").length &&
    crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1));
  if (!fresh || !same) return res.sendStatus(400);

  const message = JSON.parse(body);                            // { id, type, mode, data }
  if (alreadyHandled(req.get("TimTim-Delivery-Id"))) return res.sendStatus(200);
  // message.type === "event.changed"    → message.data.event
  // message.type === "earnings.changed" → message.data.earning
  res.sendStatus(200);
});

Svar við einum 2xx í 10 sekúndur. Um ikki, roynmil aftur eftir 1 minutti, 5 minutt, 30 minutt, þá 2, 6, 12 og 24 tímar, så stopp. Tygum aldrei fara beinleiðisleiðis.

Sandboxið

Royn lyklar fá samstundisavgerðir merktar TEST EVENT - EKKI REALMONEY. Opna ein kup_url, trýst Ka kaup Test bøtta, þá biðja um tínar innløn. Demoneir eina bakteri og horfa á det umvendt.

Tað eitt gerst longur

Brekkar útløga summara, við einari titli og hvussu at gera næst. Alt svar berm eitt TimTim-Request-Id. Send tað til oss og teir kunna finna tínar umbønari.

  • 401missing_keyPlease add your TimTim.Live key. Send it as: Authorization: Bearer tt_test_… — get a test key at /partners/dashboard.
  • 401invalid_keyWe do not recognise that key. Check you copied the whole key, or make a new one at /partners/dashboard.
  • 401revoked_keyThat key was switched off. Make a new key at /partners/dashboard.
  • 403partner_inactiveThis partner account cannot use live keys right now. Your test key still works. Contact TimTim.Live partnerships to review the account.
  • 403missing_scopeThis key is not allowed to do that. Earnings need a secret key (tt_sk_live_…) or a test key, used from your server.
  • 403domain_not_allowedThis website is not allowed to use this key. Add the website to the key's allowed domains at /partners/dashboard.
  • 400unknown_parameterWe do not know one of those parameters. See /partners/docs for the list.
  • 400invalid_countryWe could not read that country. Use a two-letter code, for example country=US or country=FR.
  • 400invalid_dateWe could not read that date. Dates look like 2026-10-20.
  • 400invalid_changed_sinceWe could not read changed_since. Use a full time, for example changed_since=2026-10-06T10:00:00Z.
  • 400invalid_booleanThat value must be true or false. For example commissioned=true.
  • 400invalid_numberThat value must be a number. For example minimum_earnings=5.
  • 400invalid_nearWe could not find that place. Try near=Paris,FR or city=Paris&country=FR.
  • 400invalid_locationWe could not read that location. Send lat, lng and optionally radius in kilometres.
  • 400invalid_limitlimit must be between 1 and 100. Leave it out to get 20.
  • 400invalid_cursorThat cursor is not one we gave you. Use the `next` value from the previous page exactly as it came.
  • 404event_not_foundWe could not find that event. It may have been removed, or it is not shared with partners.
  • 403capability_requiredCard-linked offers are not switched on for your account. Offers are an enterprise feature. Your test key shows sample offers now; ask TimTim.Live partnerships to review your account for live offers.
  • 403server_key_requiredThis is for your server only. Use a secret key (tt_sk_live_…) or a test key from your server, never a website key in a web page.
  • 403commerce_not_enabledSelling tickets in your own app is not switched on for your account. This is an enterprise feature (EMBEDDED_CHECKOUT). Your test key can try it now; ask TimTim.Live partnerships to review your account. Until then, use each event's buy_url.
  • 503checkout_not_openCard payments are not open on TimTim.Live yet. Send the buyer to the event's buy_url instead. Your test key can still rehearse orders.
  • 409ticket_not_availableThat ticket cannot be bought right now. It may be sold out, not on sale yet, or no longer on sale. Ask /v1/events/{id}/tickets for what is on sale now.
  • 400order_invalidWe could not read that order. See /partners/docs for the fields an order needs.
  • 409idempotency_conflictThat Idempotency-Key was already used for a different order. Send exactly the same order to get the same answer back, or use a new Idempotency-Key for a new order.
  • 400idempotency_key_requiredPlease send an Idempotency-Key header. 8 to 80 letters, digits, - or _. Send the same key again to retry safely — you will get the same order, never a second one.
  • 404order_not_foundWe could not find that order. Only orders your company began with this kind of key (test or live) can be read here.
  • 403bulk_not_enabledBulk feeds are not switched on for your account. This is an enterprise feature (BULK_FEEDS). Your test key can try it now; ask TimTim.Live partnerships to review your account. Until then, page through /v1/events or the feeds.
  • 404bulk_not_foundWe could not find that bulk feed. Use the address shown on /partners/dashboard: /v1/bulk/<subscription id>.ndjson.gz or .csv.gz.
  • 429bulk_too_soonA full file was made for this feed a few minutes ago. Full files can be made every 15 minutes. For what changed since, add changed_since=<time> — that is not limited.
  • 410event_withdrawnThis event is no longer shared with partners. Stop showing it and remove its buy_url. Nothing else is needed — your old link still takes people to the event page.
  • 400invalid_trackWe could not read that tracking signal. Send {"type":"impression"}, {"type":"event_view","event_id":"…"} or {"type":"event_click","event_id":"…"}. Sales are recorded by TimTim.Live, never sent from a page.
  • 404not_foundThere is nothing at this address. The Partner API lives at /v1/events, /v1/events/{id}, /v1/offers and /v1/earnings.
  • 405method_not_allowedThis address does not answer that method. The Allow header lists the methods it answers.
  • 401key_in_urlSend your key in the Authorization header. Only /v1/feeds reads a key from the URL (?key=). Everywhere else use Authorization: Bearer <key> — keys in URLs end up in logs.
  • 403ip_not_allowedThis key only works from your listed servers. Call from an address on the key's allowlist, or change the list at /partners/dashboard.
  • 401certificate_requiredThis key needs your client certificate. Connect to https://api.timtim.live with the TLS client certificate pinned to this key.
  • 401certificate_mismatchThat is not the certificate pinned to this key. Use the certificate whose SHA-256 is on your dashboard, or pin the new one there.
  • 429rate_limitedToo many requests — please slow down. Wait the number of seconds in Retry-After, then try again.
  • 503unavailableThe Partner API is resting for a moment. Please try again in a minute.
  • 500server_errorSomething went wrong on our side. Please try again. If it keeps happening, send us your TimTim Request ID.

Kontratein

Fulla frágreiðing af hverju svæði, á OpenAPI sniðið tíni verkætlanir geta lesið.

Niðurtøka openapi.yaml

Hvussu levende lyklar lata upp

Títt prķflykil verkar strax. Fyri beina lyklar, ein persón at TimTim.Live lítur á teldunavnið, tínar heimasetur og ið tú færir at sýna at viðburðarar. Tú hevur svarið á teknindimyndaborðinu.

TimTim.Live API uppgávur

Útgávur 1 vaxur einans. Teir leggja inn nýggj teirra. Teir taka ikki burtur eða Feroarje hvør er longu longu.

  • — Umbidnar svar nú við einari ETag. Send tað aftur sum Um-Engin-Match til at fá ein snøgg 304 tá einki broytt. Valdráttur.
  • — Netvegsnøgglar telja uppi ímillum nú, so uppá tínar staðir halda verkandi. Eingin atgerð tærst.
  • — Klientaskrár (mTLS) eru opnar: pin tínar váttan til einari lykil á tekni instrumentaborðinu. Valdráttur. Eingin atgerð tærst.
  • — Bulk feeds: hvør eina atburði kann sýna, í einni fílu, við GET /v1/bulk. Valdráttur. Eingin atgerð tærst.
  • — API hevur sitt eigið atsetur: https://api.tim.live/v1. https://timtim.livet/v1 held áfram å verka. Eingin atgerð tærst.
  • — Tín eigin brandað kassasíða við tim.live/útgáv. Valdráttur. Eingin atgerð tærst.
  • — Sellmillar í tínum eigin appl: GET /v1/events/EVENT_ID/tickets og POST /v1/orders. Valdráttur. Eingin atgerð tærst.
  • — Ein offentleg síða á /partners/status, vísað hvør eina minutti. Eingin atgerð tærst.
  • — Mánaðarsetningarfyri boðskap: GET /v1/settingar. Eingin atgerð tærst.
  • — Postbacks: lag afturat ?sub_id= til einari kaups leinkja ogmilir senda tað aftur til tík við verkið. Valdráttur. Eingin atgerð tærst.
  • — Card-bundið viðskipanir fyri bankar og umbýtingar forrit: GET /v1/offers. Valdráttur. Eingin atgerð tærst.
  • — Kalendari Feed: /v1/feeds/events.ics til Google Kalender, Apple Calendar og Outlook. Eingin atgerð tærst.
  • — Læs eina lykil til tínar ambætarar: IP loyvdarlistar nú, viðskiptaváttan(mTLS) á api.tim.live. Valdráttur. Eingin atgerð tærst.
  • — OAuth 2.0 viðskiptavinur til frægar innskot: POST /v1/oauth/token og /v1/auth/revolve. Lyklar halda áfram að verka. Eingin atgerð tærst.
  • — WordPress faldinl 1.0: eitt blokka, einari shortcode og einari stillingarsíða. Tað býtir upp sig sjølv úr tim.live. Eingin atgerð tærst.
  • — Vegisidesskjermelement, JSON/RSS/XML/CSV feeds og webhooks (event.changed, parain.changeed). Eingin atgerð tærst.
  • — Partner API v1: atburðar, ein atburður, fortjeneste, og sandboxið. Eingin atgerð tærst.