Giter Site home page Giter Site logo

Comments (10)

jakewmeyer avatar jakewmeyer commented on April 29, 2024 1

This is likely the schema I'll go with, and the reuse section order will correspond to the order of cores listed in the array.

{
    "flight_number": 50,
    "launch_year": "2017",
    "launch_date_unix" : 1509392040,
    "launch_date_utc": "2017-10-30T19:34:00Z",
    "launch_date_local": "2017-10-30T15:34:00-04:00",
    "rocket": {
      "rocket_id": "falcon9",
      "rocket_name": "Falcon 9",
      "rocket_type": "FT",
      "first_stage": {
        "cores": [
          {
            "core_serial": "B1042",
            "reused" : false,
            "land_success": true,
            "landing_type": "ASDS",
            "landing_vehicle": "OCISLY"
          }
        ]
      },
      "second_stage": {
        "payloads": [
          {
            "payload_id": "KoreaSat 5A",
            "reused" : false,
            "customers": [
              "KT Corporation"
            ],
            "payload_type": "Satellite",
            "payload_mass_kg": 3700,
            "payload_mass_lbs": 8157.104,
            "orbit": "GTO"
          }
        ]
      }
    },
    "telemetry": {
      "flight_club": null
    },
    "reuse": {
      "core": false,
      "side_core1": false,
      "side_core2": false,
      "fairings": false,
      "capsule": false
    },
    "launch_site": {
      "site_id": "ksc_lc_39a",
      "site_name": "KSC LC 39A",
      "site_name_long" : "Kennedy Space Center Historic Launch Complex 39A"
    },
    "launch_success": true,
    "links": {
      "mission_patch": "http://spacexpatchlist.space/patches/spacex_f9_044_koreasat_5a_graphic.png",
      "reddit_campaign": "https://www.reddit.com/r/spacex/comments/73ttkd/koreasat_5a_launch_campaign_thread/",
      "reddit_launch": "https://www.reddit.com/r/spacex/comments/79iuvb/rspacex_koreasat_5a_official_launch_discussion/",
      "reddit_recovery": null,
      "reddit_media": "https://www.reddit.com/r/spacex/comments/79lmdu/rspacex_koreasat5a_media_thread_videos_images/",
      "presskit": "http://www.spacex.com/sites/spacex/files/koreasat5apresskit.pdf",
      "article_link": "https://spaceflightnow.com/2017/10/30/spacex-launches-and-lands-third-rocket-in-three-weeks/",
      "video_link": "https://www.youtube.com/watch?v=RUjH14vhLxA"
    },
    "details": "KoreaSat 5A is a Ku-band satellite capable of providing communication services from East Africa and Central Asia to southern India, Southeast Asia, the Philippines, Guam, Korea, and Japan. The satellite will be placed in GEO at 113° East Longitude, and will provide services ranging from broadband internet to broadcasting services and maritime communications."
}

from spacex-api.

petrosh avatar petrosh commented on April 29, 2024

ITS ???!

sorry guys BFS... 😳

from spacex-api.

jakewmeyer avatar jakewmeyer commented on April 29, 2024

This is tricky, and probably better to go with a one size fits all approach to keep the data similar from launch to launch.

I like the approach of these last two, but it requires a pretty big breaking change, likely a necessary one to keep up future data. I'll mock up one of the launches as an example, and we can run it by everyone first, to find the most flexible approach going forward.

from spacex-api.

jakewmeyer avatar jakewmeyer commented on April 29, 2024

@petrosh This is a quick rough draft of sorts, few things to consider.

  1. Should we move all the reusability data to the first/second stage data? Fairing reuse data doesn't fit anywhere currently.

  2. Should the payload data fields stay the same no matter what? Or should we have different fields depending on if it's a satellite, capsule, or BFR launch?

Feel free to edit with more ideas, or if you have a better layout πŸ‘

{
  "flight_number": 50,
  "launch_year": "2017",
  "launch_date_utc": "2017-10-30T19:34:00Z",
  "launch_date_local": "2017-10-30T15:34:00-04:00",
  "rocket": {
    "rocket_id": "falcon9",
    "rocket_name": "Falcon 9",
    "rocket_type": "FT",
    "first_stage": {
      "cores": [
        {
          "core_serial": "B1042",
          "land_success": true,
          "landing_type": "ASDS",
          "landing_vehicle": "OCISLY"
        }
      ]
    },
    "second_stage": {
      "payloads": [
        {
          "payload_id": "KoreaSat 5A",
          "customers": [
            "KT Corporation"
          ],
          "payload_type": "Satellite",
          "payload_mass_kg": 3700,
          "payload_mass_lbs": 8157.104,
          "orbit": "GTO"
        }
      ]
    }
  },
  "telemetry": {
    "flight_club": null
  },
  "reuse": {
    "core": false,
    "side_core1": false,
    "side_core2": false,
    "fairings": false,
    "capsule": false
  },
  "launch_site": {
    "site_id": "ksc_lc_39a",
    "site_name": "KSC LC 39A"
  },
  "launch_success": true,
  "links": {
    "mission_patch": "http://spacexpatchlist.space/patches/spacex_f9_044_koreasat_5a_graphic.png",
    "reddit_campaign": "https://www.reddit.com/r/spacex/comments/73ttkd/koreasat_5a_launch_campaign_thread/",
    "reddit_launch": "https://www.reddit.com/r/spacex/comments/79iuvb/rspacex_koreasat_5a_official_launch_discussion/",
    "reddit_recovery": null,
    "reddit_media": "https://www.reddit.com/r/spacex/comments/79lmdu/rspacex_koreasat5a_media_thread_videos_images/",
    "presskit": "http://www.spacex.com/sites/spacex/files/koreasat5apresskit.pdf",
    "article_link": "https://spaceflightnow.com/2017/10/30/spacex-launches-and-lands-third-rocket-in-three-weeks/",
    "video_link": "https://www.youtube.com/watch?v=RUjH14vhLxA"
  },
  "details": "KoreaSat 5A is a Ku-band satellite capable of providing communication services from East Africa and Central Asia to southern India, Southeast Asia, the Philippines, Guam, Korea, and Japan. The satellite will be placed in GEO at 113° East Longitude, and will provide services ranging from broadband internet to broadcasting services and maritime communications."
}

from spacex-api.

petrosh avatar petrosh commented on April 29, 2024

Actually I now think was wrong on both the points:

  1. It is more flexible to keep the unique reuse object, is a useful bit of data and can contain anything, so for FH: reuse.core, reuse.side_core1, reuse.side_core2 would refer to rocket.first_stage.cores[0], rocket.first_stage.cores[1], rocket.first_stage.cores[2].

  2. Different fields is better, as per vehicles schema the payload is customized inside second_stage for every kind of first stage.
    Maybe for the launches, receiving the payload array in the root for F9, and inside second_stage for FH could break some app, even for BF the payload could stay in the root and like reuse can be expanded smoothly.

So thinking better we could just expect a rocket.first_stage.cores[] for FH and an interesting rocket.second_stage for BF πŸ™€

from spacex-api.

HarvsG avatar HarvsG commented on April 29, 2024

@petrosh Are you saying that the reuse value could be accessed by both reuse.side_core1 AND rocket.first_stage.cores[1].resuse?

from spacex-api.

petrosh avatar petrosh commented on April 29, 2024

No, was just a reminder about the naming convention: we have to know what property refers to which array element.

from spacex-api.

jakewmeyer avatar jakewmeyer commented on April 29, 2024

I think I'll keep both and just let people choose how they want to approach it.

from spacex-api.

jakewmeyer avatar jakewmeyer commented on April 29, 2024

New schema is live on the V2 endpoints as of #61 πŸ‘

from spacex-api.

petrosh avatar petrosh commented on April 29, 2024
  • Love your new entries on payload_id and orbit 😜
  • "rocket_type": "FT" we mean full thrust cores, or we want FH?
  • Nice you put day 31 because 0 gives error on date parsing. Worth adding in future a boolean NET flag, if true launch date is intended "not early than"?

from spacex-api.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.