--- openapi: 3.0.2 info: title: Metaport version: 1.0.0 description: API for incoming Metadata contact: name: Peter Teich url: https://quantumcast-digital.de email: peter.teich@quantumcast.de servers: - url: https://metadata.streamabc.net description: "Default Server" paths: /metalog/{key}/{token}: description: This logging endpoint allows to check if the pushed metadata has been inserted. get: responses: "200": content: application/json: schema: $ref: '#/components/schemas/MetadataLogResponse' description: Return logging information for a channel "401": description: Token not valid "404": description: Channelkey not found operationId: getMetalog summary: Get logging information parameters: - examples: channelkey: value: rtlb_oksudh2jql_dusr name: key description: Channelkey schema: type: string in: path required: true - name: token description: Security token schema: type: string in: path required: true /metapush/{key}/{token}/: summary: Push Metadata description: Send metadata for a specific channel. servers: - url: https://metadata.streamabc.net description: "" get: parameters: - examples: Song: value: The Race name: song description: Song name schema: type: string in: query required: true - examples: Artist: value: Yello name: artist description: Artist name schema: type: string in: query required: true - examples: Duration: value: "184" name: duration description: Duration of the track in seconds schema: type: integer in: query required: true - name: id description: External track id schema: type: string in: query - name: separator description: Separator string for concatenation of artist and song. If empty " - " is used. schema: type: string in: query - name: tracktype description: Type of pushed track. One of now or next. schema: enum: - now - next type: string in: query - examples: timestamp: value: "1613819683" name: time description: Start time of the track as Unix timestamp (UTC). If empty or zero the current time is used. schema: type: integer in: query responses: "200": content: application/json: schema: $ref: '#/components/schemas/MetadataResponse' description: Metadata push sucessful "401": description: Token not valid "400": description: Input parameters not valid "500": description: Internal error when saving metadata security: - token: [] operationId: getMetapush summary: Send Metadata description: Send metadata using URL parameters. post: requestBody: description: Metadata as JSON content: application/json: schema: $ref: '#/components/schemas/MetadataPush' required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/MetadataResponse' description: Metadata saved. "401": description: Token not valid "400": description: JSON not valid "500": description: Error saving data operationId: postMetapush summary: Push Metadata as JSON description: Send metadata with JSON POST. parameters: - examples: rtlb_tn9ofjxpzt_8lfi: value: rtlb_tn9ofjxpzt_8lfi name: key description: Channelkey schema: type: string in: path required: true - examples: Token: value: aGtf188Jhhge name: token description: Security token schema: type: string in: path required: true components: schemas: MetadataResponse: title: Root Type for MetadataResponse description: "" type: object properties: time: format: date-time type: string start: type: string start_timestamp: format: int32 type: integer duration: type: string song: type: string artist: type: string channelkey: type: string timezone: type: string separator: type: string example: time: 2021-02-19T21:49:16Z start: 19.02.2021 21:49:16 start_timestamp: 1613771356 duration: "210" song: "" artist: Yello channelkey: sunsl_6eifqasv1_fngh timezone: UTC separator: "" MetadataPush: title: Root Type for MetadataPush description: "" required: - artist - duration - song type: object properties: id: description: External track id type: string time: format: date-time description: Starttime as parsable Date/Time string type: string timestamp: format: int32 description: "Timestamp as Unix timestamp. If time and timestamp is provided,\ \ this value has precedence." type: integer duration: description: Track length in seconds type: integer song: type: string artist: type: string album: type: string separator: type: string timezone: type: string tracktype: enum: - now - next type: string example: id: d203eed5dda382ef07bcdd9f14420bc8 time: 2021-02-19T19:35:47Z timestamp: 1613819683 duration: 196 song: The Race artist: Yello album: "" separator: "" timezone: UTC tracktype: now MetadataLogResponse: title: Root Type for MetadataLogResponse description: "" type: object properties: brandid: type: string channelkey: type: string name: type: string hash: format: int32 type: integer monitor: type: boolean last_pushed: type: string last_alert: format: date-time type: string last_request: type: string mounts: type: array items: type: object properties: mount: type: string history: type: string example: brandid: 1046rtl channelkey: rtlberlin-top40 name: 104.6 RTL Top 40 hash: 105976320 monitor: false last_pushed: 2021-02-20T11:25:32.223804291Z last_alert: 0001-01-01T00:00:00Z last_request: /metapush/rtlberlin-top40/gOP76D3bddW?song=Anxious&artist=Dennis+Lloyd&duration=174&time=1613820316&separator=+-+ mounts: - mount: /source-rtlb-rtlberlintop40-mp3-192-9824297 securitySchemes: token: scheme: bearer type: http security: - token: [] tags: - name: backend description: ""