rocket-space-stuff


Namerocket-space-stuff JSON
Version 0.1.0 PyPI version JSON
download
home_page
SummaryA basic space api
upload_time2023-01-15 17:03:39
maintainer
docs_urlNone
authorMiro Rava
requires_python
license
keywords python api space
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Rocket Space Stuff 

Rocket Space Stuff is a Python library that allows you to interact with various space-related API endpoints. With this library, you can retrieve information about astronauts, launches, and launchers.
## Links and Creators:

* Creator: Miro Rava                        [Linkedin profile](https://www.linkedin.com/in/miro-rava/)
* Tester: Oleg Lastocichin                  [Linkedin profile](https://www.linkedin.com/in/oleg-lastocichin-845733252/)

* [Github page for the entire project](https://github.com/MiroRavaProj/Web-service-and-API-for-Space-Data)
## Installation
```shell
python -m pip install rocket-space-stuff
```
## Usage and methods for Astronaut Objects
### Initialize Astronaut Object
* From Database:
```python
# Initialize the SpaceAPI client
api = SpaceApi()

# Find astronaut by name
astro = api.find_astro_by('name', 'John Smith')
```
* Manually
```python
from space_py import Astronaut
astro = Astronaut({"name": name, "date_of_birth": birth, "date_of_death": death, "nationality": nationality,
                     "bio": description,
                     "twitter": twitter, "instagram": insta, "wiki": wiki,
                     "profile_image": profile_img,
                     "profile_image_thumbnail": profile_img_thmb,
                     "flights_count": flights, "landings_count": landings, "last_flight": last_fl,
                     "first_flight": first_fl, "status_name": status, "type_name": enroll,
                     "agency_name": agency, "agency_type": agency_type,
                     "agency_country_code": agency_countries, "agency_abbrev": agency_acr,
                     "agency_logo_url": agency_logo})
```
### Getters and Setters
`age`
Retrieves the astronaut's age.
```python
# Get astronaut's age
age = astro.age
```
`age_of_death`
Retrieves the astronaut's age of death.
```python
# Get astronaut's age_of_death
age_of_death = astro.age_of_death
```
`agency_abbrev`
Retrieves and Set the astronaut's agency abbreviation.
```python
# Get astronaut's agency abbreviation
agency_abbrev = astro.agency_abbrev
# Set astronaut's agency abbreviation
astro.agency_abbrev = "NASA"

```
`agency_country_code`
Retrieves and Set the astronaut's agency country code.
```python
# Get astronaut's agency country code
agency_country_code = astro.agency_country_code
# Set astronaut's agency country code
astro.agency_country_code = "US"

```
`agency_logo_url`
Retrieves and Set the astronaut's agency logo url.
```python
# Get astronaut's agency logo url
agency_logo_url = astro.agency_logo_url
# Set astronaut's agency logo url
astro.agency_logo_url = "https://www.nasa.gov/sites/default/files/images/nasa-logo.png"

```
`agency_name`
Retrieves and Set the astronaut's agency name.
```python
# Get astronaut's agency name
agency_name = astro.agency_name
# Set astronaut's agency name
astro.agency_name = "National Aeronautics and Space Administration"

```
`agency_type`
Retrieves and Set the astronaut's agency type.
```python
# Get astronaut's agency type
agency_type = astro.agency_type
# Set astronaut's agency type
astro.agency_type = "Governmental"

```
`bio`
Retrieves and Set the astronaut's bio.
```python
# Get astronaut's bio
bio = astro.bio
# Set astronaut's bio
astro.bio = "John Smith is an astronaut with NASA. He has flown on 3 space missions."

```
`birth_date`
Retrieves and Set the astronaut's birth date.
```python
# Get astronaut's birth date
birth_date = astro.birth_date
# Set astronaut's birth date
astro.birth_date = "1970-01-01"

```
`death_date`
Retrieves and Set the astronaut's death date.
```python
# Get astronaut's death date
death_date = astro.death_date
# Set astronaut's death date
astro.death_date = "2050-01-01"

```
`first_flight`
Retrieves and Set the astronaut's first flight.
```python
# Get astronaut's first flight
first_flight = astro.first_flight
# Set astronaut's first flight
astro.first_flight = "2000-01-01"

```
`flights_count`
Retrieves and Set the astronaut's flights count.
```python
# Get astronaut's flights count
flights_count = astro.flights_count
# Set astronaut's flights count
astro.flights_count = "3"

```
`instagram`
Retrieves and Set the astronaut's Instagram page url.
```python
# Get astronaut's Instagram page url
instagram = astro.instagram
# Set astronaut's Instagram handle
astro.instagram = "https://www.instagram.com/j_smith_astro"

```
`jsonify`
Retrieves the astronaut's information in JSON format.
```python
# Get astronaut's information in JSON format
json_data = astro.jsonify

```
`landings_count`
Retrieves and Set the astronaut's landings count.
```python
# Get astronaut's landings count
landings_count = astro.landings_count
# Set astronaut's landings count
astro.landings_count = "2"
```
`last_flight`
Retrieves and Set the astronaut's last flight.
```python
# Get astronaut's last flight
last_flight = astro.last_flight
# Set astronaut's last flight
astro.last_flight = "2022-01-01"

```
`name`
Retrieves and Set the astronaut's name.
```python
# Get astronaut's name
name = astro.name
# Set astronaut's name
astro.name = "John Smith"

```
`nationality`
Retrieves and Set the astronaut's nationality.
```python
# Get astronaut's nationality
nationality = astro.nationality
# Set astronaut's nationality
astro.nationality = "USA"

```
`profile_image`
Retrieves and Set the astronaut's profile image url.
```python
# Get astronaut's profile image url
profile_image = astro.profile_image
# Set astronaut's profile image url
astro.profile_image = "https://www.example.com/images/j_smith_astro.jpg"

```
`profile_image_thumbnail`
Retrieves and Set the astronaut's profile image thumbnail url.
```python
# Get astronaut's profile image thumbnail url
profile_image_thumbnail = astro.profile_image_thumbnail
# Set astronaut's profile image thumbnail url
astro.profile_image_thumbnail = "https://www.example.com/images/j_smith_astro_thumbnail.jpg"

```
`show_basic_info`
Retrieves the astronaut's basic information.
```python
# Get astronaut's basic information
basic_info = astro.show_basic_info

```
`status_name`
Retrieves and Set the astronaut's status name.
```python
# Get astronaut's status name
status_name = astro.status_name
# Set astronaut's status name
astro.status_name = "Active"

```
`twitter`
Retrieves and Set the astronaut's twitter url.
```python
# Get astronaut's twitter url
twitter = astro.twitter
# Set astronaut's twitter handle
astro.twitter = "https://twitter.com/j_smith_astro"

```
`type_name`
Retrieves and Set the astronaut's type name.
```python
# Get astronaut's type name
type_name = astro.type_name
# Set astronaut's type name
astro.type_name = "Government"

```
`wiki`
Retrieves and Set the astronaut's wiki page url.
```python
# Get astronaut's wiki page url
wiki = astro.wiki
# Set astronaut's wiki page url
astro.wiki = "https://en.wikipedia.org/wiki/John_Smith_(astronaut)"

```
## Usage and methods for Launcher Objects
### Initialize Launcher Object
* From Database:
```python
# Initialize the SpaceAPI client
api = SpaceApi()

# Find astronaut by name
launcher = api.find_launcher_by('full_name', 'Atlas V')
```
* Manually
```python
from space_py import Launcher
launcher = Launcher({"flight_proven": flight_proven, "serial_number": serial_number, "status": status,
                     "details": details, "image_url": image_url, "flights": flights,
                     "last_launch_date": last_launch_date, "first_launch_date": first_launch_date,
                     "launcher_config_full_name": launcher_config_full_name})
```
* The methods `jsonify` and `show_basic_info` are similar to the Astronaut's ones.
* All these following methods are both Getters and Setters similarly to the Astronaut's ones:
```python
[launcher.description, launcher.first_launch, launcher.flights_count, launcher.full_name, launcher.is_flight_proven, 
 launcher.last_launch, launcher.launcher_image, launcher.serial_n, launcher.status]
```
## Usage and methods for Launch Objects
### Initialize Launch Object
* From Database:
```python
# Initialize the SpaceAPI client
api = SpaceApi()

# Find astronaut by name
launch = api.find_launch_by('name', 'Atlas V')
```
* Manually
```python
from space_py import Launch
launch = Launch({"name": name, "net": net, "window_start": window_start,
                     "window_end": window_end, "failreason": fail_reason, "image": image,
                     "infographic": infographic, "orbital_launch_attempt_count": orbital_launch_attempt_count,
                     "orbital_launch_attempt_count_year": orbital_launch_attempt_count_year,
                     "location_launch_attempt_count": location_launch_attempt_count,
                     "location_launch_attempt_count_year": location_launch_attempt_count_year,
                     "pad_launch_attempt_count": pad_launch_attempt_count,
                     "pad_launch_attempt_count_year": pad_launch_attempt_count_year,
                     "agency_launch_attempt_count": agency_launch_attempt_count,
                     "agency_launch_attempt_count_year": agency_launch_attempt_count_year,
                     "status_name": status_name, "launch_service_provider_name": launch_service_provider_name,
                     "launch_service_provider_type": launch_service_provider_type, "rocket_id": rocket_id,
                     "rocket_configuration_full_name": rocket_config_full_name,
                     "mission_name": mission_name, "mission_description": mission_description,
                     "mission_type": mission_type, "mission_orbit_name": mission_orbit_name,
                     "pad_wiki_url": pad_wiki_url, "pad_longitude": pad_longitude,
                     "pad_latitude": pad_latitude, "pad_location_name": pad_location_name,
                     "pad_location_country_code": pad_location_country_code})
```
* The methods `jsonify` and `show_basic_info` are similar to the Astronaut's ones.
* All these methods are both Getters and Setters similarly to the Astronaut's ones:
```python
[launch.agency_launch_attempt_count, launch.agency_launch_attempt_count_year, launch.fail_reason, launch.image, 
 launch.infographic, launch.jsonify, launch.launch_service_provider_name, launch.launch_service_provider_type, 
 launch.location_launch_attempt_count, launch.location_launch_attempt_count_year, launch.mission_description, 
 launch.mission_name, launch.mission_orbit_name, launch.mission_type, launch.name, launch.net, 
 launch.orbital_launch_attempt_count, launch.orbital_launch_attempt_count_year, launch.pad_latitude, 
 launch.pad_launch_attempt_count, launch.pad_launch_attempt_count_year, launch.pad_location_country_code, 
 launch.pad_location_name, launch.pad_longitude, launch.pad_wiki_url, launch.rocket_config_full_name, launch.rocket_id, 
 launch.show_basic_info, launch.status_name, launch.window_end, launch.window_start]
```

## Usage and methods for SpaceApi Objects
###Populate Astronaut Launch and Launcher with SpaceApi
* Instead of Initializing manually Astronaut, Launch or Launcher Objects, we can use SpaceApi `populate` methods.
```python
from space_py import SpaceApi
api = SpaceApi()
astro = api.populate_astro(name: str, birth: str, death: str, nationality: str, description: str, flights: str,
                            landings: str, last_fl: str, agency_acr: str, twitter: str = "None", insta: str = "None",
                            wiki: str = "None", profile_img: str = "None", profile_img_thmb: str = "None",
                            first_fl: str = "None",
                            status: str = "None", enroll: str = "None", agency: str = "None", agency_type: str = "None",
                            agency_countries: str = "None", agency_logo: str = "None")

launch = api.populate_launch(name: str, net: str, status_name: str, launch_service_provider_name: str,
                            rocket_config_full_name: str,
                            mission_description: str, pad_location_name: str,
                            window_start: str = "None", window_end: str = "None", fail_reason: str = "None",
                            image: str = "None",
                            infographic: str = "None", orbital_launch_attempt_count: str = "None",
                            orbital_launch_attempt_count_year: str = "None",
                            location_launch_attempt_count: str = "None", location_launch_attempt_count_year: str = "None",
                            pad_launch_attempt_count: str = "None", pad_launch_attempt_count_year: str = "None",
                            agency_launch_attempt_count: str = "None", agency_launch_attempt_count_year: str = "None",
                            launch_service_provider_type: str = "None", rocket_id: str = "None",
                            mission_name: str = "None", mission_type: str = "None",
                            mission_orbit_name: str = "None", pad_wiki_url: str = "None", pad_longitude: str = "None",
                            pad_latitude: str = "None",
                            pad_location_country_code: str = "None")

launcher = api.populate_launcher(launcher_config_full_name: str, serial_number: str, status: str, details: str, flights: str,
                                image_url: str = "None",
                                last_launch_date: str = "None", first_launch_date: str = "None",
                                flight_proven: str = "False")
```
### Url methods
* `default_url`: Returns the default API URL.
```python
from space_py import SpaceApi
api = SpaceApi()
default_url = api.default_url
```

* `url`: Returns the current API URL and can permit you to change it.
```python
from space_py import SpaceApi
api = SpaceApi()
print(api.url)
# https://current-api-url.com

new_url = 'https://new-api-url.com'
api.url = new_url
print(api.url)
# https://new-api-url.com
```
### Add methods
* `add_astro(astro: Astronaut)`: Adds a new astronaut to the API. The `astro` parameter should be an Astronaut object containing the astronaut's information.
```python
from space_py import SpaceApi, Astronaut
api = SpaceApi()
new_astro = Astronaut({"name": name, "date_of_birth": birth, "date_of_death": death, "nationality": nationality,
                     "bio": description,
                     "twitter": twitter, "instagram": insta, "wiki": wiki,
                     "profile_image": profile_img,
                     "profile_image_thumbnail": profile_img_thmb,
                     "flights_count": flights, "landings_count": landings, "last_flight": last_fl,
                     "first_flight": first_fl, "status_name": status, "type_name": enroll,
                     "agency_name": agency, "agency_type": agency_type,
                     "agency_country_code": agency_countries, "agency_abbrev": agency_acr,
                     "agency_logo_url": agency_logo})
api.add_astro(new_astro)
   ```
* `add_launch(launch: Launch)`: Adds a new launch to the API. The `launch` parameter should be a Launch Object containing the launch's information.
```python
from space_py import SpaceApi, Launch
api = SpaceApi()
new_astro = Launch({"name": name, "net": net, "window_start": window_start,
                     "window_end": window_end, "failreason": fail_reason, "image": image,
                     "infographic": infographic,
                     "orbital_launch_attempt_count": orbital_launch_attempt_count,
                     "orbital_launch_attempt_count_year": orbital_launch_attempt_count_year,
                     "location_launch_attempt_count": location_launch_attempt_count,
                     "location_launch_attempt_count_year": location_launch_attempt_count_year,
                     "pad_launch_attempt_count": pad_launch_attempt_count,
                     "pad_launch_attempt_count_year": pad_launch_attempt_count_year,
                     "agency_launch_attempt_count": agency_launch_attempt_count,
                     "agency_launch_attempt_count_year": agency_launch_attempt_count_year,
                     "status_name": status_name,
                     "launch_service_provider_name": launch_service_provider_name,
                     "launch_service_provider_type": launch_service_provider_type, "rocket_id": rocket_id,
                     "rocket_configuration_full_name": rocket_config_full_name,
                     "mission_name": mission_name, "mission_description": mission_description,
                     "mission_type": mission_type, "mission_orbit_name": mission_orbit_name,
                     "pad_wiki_url": pad_wiki_url, "pad_longitude": pad_longitude,
                     "pad_latitude": pad_latitude, "pad_location_name": pad_location_name,
                     "pad_location_country_code": pad_location_country_code})
api.add_launch(new_astro)
   ```
* `add_launcher(launcher: Launcher)`: Adds a new launcher to the API. The `launcher` parameter should be a Launch Object containing the launcher's information.
```python
from space_py import SpaceApi, Launcher
api = SpaceApi()
new_astro = Launcher({"flight_proven": flight_proven, "serial_number": serial_number, "status": status,
                     "details": details, "image_url": image_url, "flights": flights,
                     "last_launch_date": last_launch_date, "first_launch_date": first_launch_date,
                     "launcher_config_full_name": launcher_config_full_name})
api.add_launcher(new_astro)
   ```
### Delete methods
* `delete_astro_by(field: str, value: str)`: Deletes an astronaut from the API based on the specified field and value.
```python
from space_py import SpaceApi
api = SpaceApi()
api.delete_astro_by('name', 'John Smith')
```
* `delete_launch_by(field: str, value: str)`: Deletes a launch from the API based on the specified field and value.
```python
from space_py import SpaceApi
api = SpaceApi()
api.delete_launch_by('name', 'Falcon 9')
```
* `delete_launcher_by(field: str, value: str)`: Deletes a launcher from the API based on the specified field and value.
```python
from space_py import SpaceApi
api = SpaceApi()
api.delete_launcher_by('full_name', 'Atlas V')
```
### Find methods
#### Used to find an entry with exact match
* `find_astro_by(field: str, value: str)`: Retrieves an astronaut from the API based on the specified field and value. If astronaut is found, `astro` is an Astronaut Object, otherwise it is a string like: `'entry non found'`
```python
from space_py import SpaceApi
api = SpaceApi()
astro = api.find_astro_by('name', 'John Smith')
```
* `find_launch_by(field: str, value: str)`: Retrieves a launch from the API based on the specified field and value. If launch is found, `launch` is a Launch Object, otherwise it is a string like: `'entry non found'`
```python
from space_py import SpaceApi
api = SpaceApi()
launch = api.find_launch_by('name', 'Falcon 9')
```
* `find_launcher_by(field: str, value: str)`: Retrieves a launcher from the API based on the specified field and value. If launcher is found, `launcher` is a Launcher Object, otherwise it is a string like: `'entry non found'`
```python
from space_py import SpaceApi
api = SpaceApi()
launcher = api.find_launcher_by('full_name', 'Atlas V')
```
### Search methods
#### Used to search for and entry that contains `value` in the `field`
* `search_astro_by(field: str, value: str)`: Retrieves an astronaut from the API based on the specified field and value. If astronaut is found, `astro` is a dictionary containing Astronaut Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`
```python
from space_py import SpaceApi
api = SpaceApi()
astro = api.search_astro_by('name', 'John Smith')
```
* `search_launch_by(field: str, value: str)`: Retrieves a launch from the API based on the specified field and value. If launch is found, `launch` is a dictionary containing Launch Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`
```python
from space_py import SpaceApi
api = SpaceApi()
launch = api.search_launch_by('name', 'Falcon 9')
```
* `search_launcher_by(field: str, value: str)`: Retrieves a launcher from the API based on the specified field and value. If launcher is found, `launcher` is a dictionary containing Launcher Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`
```python
from space_py import SpaceApi
api = SpaceApi()
launcher = api.search_launcher_by('full_name', 'Atlas V')
```
### Update methods
#### Used to overwrite an entry that exactly mach `value` in `field`
* `update_astro_by(field: str, value: str, update: Astronaut)`: Updates an astronaut record in the API based on the specified field and value. The `astro` parameter should be an Astronaut object containing the astronaut's information.
```python
from space_py import SpaceApi, Astronaut
api = SpaceApi()
updated_astro = Astronaut({"name": name, "date_of_birth": birth, "date_of_death": death, "nationality": nationality,
                     "bio": description,
                     "twitter": twitter, "instagram": insta, "wiki": wiki,
                     "profile_image": profile_img,
                     "profile_image_thumbnail": profile_img_thmb,
                     "flights_count": flights, "landings_count": landings, "last_flight": last_fl,
                     "first_flight": first_fl, "status_name": status, "type_name": enroll,
                     "agency_name": agency, "agency_type": agency_type,
                     "agency_country_code": agency_countries, "agency_abbrev": agency_acr,
                     "agency_logo_url": agency_logo})
api.update_astro_by('name', 'John Smith', updated_astro)
   ```
* `update_launch_by(field: str, value: str, update: Launch)`: Updates a launch record in the API based on the specified field and value. The `launch` parameter should be a Launch Object containing the launch's information.
```python
from space_py import SpaceApi, Launch
api = SpaceApi()
updated_astro = Launch({"name": name, "net": net, "window_start": window_start,
                     "window_end": window_end, "failreason": fail_reason, "image": image,
                     "infographic": infographic,
                     "orbital_launch_attempt_count": orbital_launch_attempt_count,
                     "orbital_launch_attempt_count_year": orbital_launch_attempt_count_year,
                     "location_launch_attempt_count": location_launch_attempt_count,
                     "location_launch_attempt_count_year": location_launch_attempt_count_year,
                     "pad_launch_attempt_count": pad_launch_attempt_count,
                     "pad_launch_attempt_count_year": pad_launch_attempt_count_year,
                     "agency_launch_attempt_count": agency_launch_attempt_count,
                     "agency_launch_attempt_count_year": agency_launch_attempt_count_year,
                     "status_name": status_name,
                     "launch_service_provider_name": launch_service_provider_name,
                     "launch_service_provider_type": launch_service_provider_type, "rocket_id": rocket_id,
                     "rocket_configuration_full_name": rocket_config_full_name,
                     "mission_name": mission_name, "mission_description": mission_description,
                     "mission_type": mission_type, "mission_orbit_name": mission_orbit_name,
                     "pad_wiki_url": pad_wiki_url, "pad_longitude": pad_longitude,
                     "pad_latitude": pad_latitude, "pad_location_name": pad_location_name,
                     "pad_location_country_code": pad_location_country_code})
api.update_launch_by('name', 'Falcon 9', updated_astro)
   ```
* `update_launcher_by(field: str, value: str, update: Launcher)`: Updates a launcher record in the API based on the specified field and value. The `launcher` parameter should be a Launch Object containing the launcher's information.
```python
from space_py import SpaceApi, Launcher
api = SpaceApi()
updated_astro = Launcher({"flight_proven": flight_proven, "serial_number": serial_number, "status": status,
                     "details": details, "image_url": image_url, "flights": flights,
                     "last_launch_date": last_launch_date, "first_launch_date": first_launch_date,
                     "launcher_config_full_name": launcher_config_full_name})
api.update_launcher_by('full_name', 'Atlas V', updated_astro)
```
## Contributing

If you would like to contribute to the development of SpaceApi, please feel free to submit a pull request.































            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "rocket-space-stuff",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "python,api,space",
    "author": "Miro Rava",
    "author_email": "<miro.rava.commercial@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/97/83/b274691caa034a0a2b09921ab1e0906d9b21abcbb1abe777af60430b6ecf/rocket-space-stuff-0.1.0.tar.gz",
    "platform": null,
    "description": "# Rocket Space Stuff \r\n\r\nRocket Space Stuff is a Python library that allows you to interact with various space-related API endpoints. With this library, you can retrieve information about astronauts, launches, and launchers.\r\n## Links and Creators:\r\n\r\n* Creator: Miro Rava                        [Linkedin profile](https://www.linkedin.com/in/miro-rava/)\r\n* Tester: Oleg Lastocichin                  [Linkedin profile](https://www.linkedin.com/in/oleg-lastocichin-845733252/)\r\n\r\n* [Github page for the entire project](https://github.com/MiroRavaProj/Web-service-and-API-for-Space-Data)\r\n## Installation\r\n```shell\r\npython -m pip install rocket-space-stuff\r\n```\r\n## Usage and methods for Astronaut Objects\r\n### Initialize Astronaut Object\r\n* From Database:\r\n```python\r\n# Initialize the SpaceAPI client\r\napi = SpaceApi()\r\n\r\n# Find astronaut by name\r\nastro = api.find_astro_by('name', 'John Smith')\r\n```\r\n* Manually\r\n```python\r\nfrom space_py import Astronaut\r\nastro = Astronaut({\"name\": name, \"date_of_birth\": birth, \"date_of_death\": death, \"nationality\": nationality,\r\n                     \"bio\": description,\r\n                     \"twitter\": twitter, \"instagram\": insta, \"wiki\": wiki,\r\n                     \"profile_image\": profile_img,\r\n                     \"profile_image_thumbnail\": profile_img_thmb,\r\n                     \"flights_count\": flights, \"landings_count\": landings, \"last_flight\": last_fl,\r\n                     \"first_flight\": first_fl, \"status_name\": status, \"type_name\": enroll,\r\n                     \"agency_name\": agency, \"agency_type\": agency_type,\r\n                     \"agency_country_code\": agency_countries, \"agency_abbrev\": agency_acr,\r\n                     \"agency_logo_url\": agency_logo})\r\n```\r\n### Getters and Setters\r\n`age`\r\nRetrieves the astronaut's age.\r\n```python\r\n# Get astronaut's age\r\nage = astro.age\r\n```\r\n`age_of_death`\r\nRetrieves the astronaut's age of death.\r\n```python\r\n# Get astronaut's age_of_death\r\nage_of_death = astro.age_of_death\r\n```\r\n`agency_abbrev`\r\nRetrieves and Set the astronaut's agency abbreviation.\r\n```python\r\n# Get astronaut's agency abbreviation\r\nagency_abbrev = astro.agency_abbrev\r\n# Set astronaut's agency abbreviation\r\nastro.agency_abbrev = \"NASA\"\r\n\r\n```\r\n`agency_country_code`\r\nRetrieves and Set the astronaut's agency country code.\r\n```python\r\n# Get astronaut's agency country code\r\nagency_country_code = astro.agency_country_code\r\n# Set astronaut's agency country code\r\nastro.agency_country_code = \"US\"\r\n\r\n```\r\n`agency_logo_url`\r\nRetrieves and Set the astronaut's agency logo url.\r\n```python\r\n# Get astronaut's agency logo url\r\nagency_logo_url = astro.agency_logo_url\r\n# Set astronaut's agency logo url\r\nastro.agency_logo_url = \"https://www.nasa.gov/sites/default/files/images/nasa-logo.png\"\r\n\r\n```\r\n`agency_name`\r\nRetrieves and Set the astronaut's agency name.\r\n```python\r\n# Get astronaut's agency name\r\nagency_name = astro.agency_name\r\n# Set astronaut's agency name\r\nastro.agency_name = \"National Aeronautics and Space Administration\"\r\n\r\n```\r\n`agency_type`\r\nRetrieves and Set the astronaut's agency type.\r\n```python\r\n# Get astronaut's agency type\r\nagency_type = astro.agency_type\r\n# Set astronaut's agency type\r\nastro.agency_type = \"Governmental\"\r\n\r\n```\r\n`bio`\r\nRetrieves and Set the astronaut's bio.\r\n```python\r\n# Get astronaut's bio\r\nbio = astro.bio\r\n# Set astronaut's bio\r\nastro.bio = \"John Smith is an astronaut with NASA. He has flown on 3 space missions.\"\r\n\r\n```\r\n`birth_date`\r\nRetrieves and Set the astronaut's birth date.\r\n```python\r\n# Get astronaut's birth date\r\nbirth_date = astro.birth_date\r\n# Set astronaut's birth date\r\nastro.birth_date = \"1970-01-01\"\r\n\r\n```\r\n`death_date`\r\nRetrieves and Set the astronaut's death date.\r\n```python\r\n# Get astronaut's death date\r\ndeath_date = astro.death_date\r\n# Set astronaut's death date\r\nastro.death_date = \"2050-01-01\"\r\n\r\n```\r\n`first_flight`\r\nRetrieves and Set the astronaut's first flight.\r\n```python\r\n# Get astronaut's first flight\r\nfirst_flight = astro.first_flight\r\n# Set astronaut's first flight\r\nastro.first_flight = \"2000-01-01\"\r\n\r\n```\r\n`flights_count`\r\nRetrieves and Set the astronaut's flights count.\r\n```python\r\n# Get astronaut's flights count\r\nflights_count = astro.flights_count\r\n# Set astronaut's flights count\r\nastro.flights_count = \"3\"\r\n\r\n```\r\n`instagram`\r\nRetrieves and Set the astronaut's Instagram page url.\r\n```python\r\n# Get astronaut's Instagram page url\r\ninstagram = astro.instagram\r\n# Set astronaut's Instagram handle\r\nastro.instagram = \"https://www.instagram.com/j_smith_astro\"\r\n\r\n```\r\n`jsonify`\r\nRetrieves the astronaut's information in JSON format.\r\n```python\r\n# Get astronaut's information in JSON format\r\njson_data = astro.jsonify\r\n\r\n```\r\n`landings_count`\r\nRetrieves and Set the astronaut's landings count.\r\n```python\r\n# Get astronaut's landings count\r\nlandings_count = astro.landings_count\r\n# Set astronaut's landings count\r\nastro.landings_count = \"2\"\r\n```\r\n`last_flight`\r\nRetrieves and Set the astronaut's last flight.\r\n```python\r\n# Get astronaut's last flight\r\nlast_flight = astro.last_flight\r\n# Set astronaut's last flight\r\nastro.last_flight = \"2022-01-01\"\r\n\r\n```\r\n`name`\r\nRetrieves and Set the astronaut's name.\r\n```python\r\n# Get astronaut's name\r\nname = astro.name\r\n# Set astronaut's name\r\nastro.name = \"John Smith\"\r\n\r\n```\r\n`nationality`\r\nRetrieves and Set the astronaut's nationality.\r\n```python\r\n# Get astronaut's nationality\r\nnationality = astro.nationality\r\n# Set astronaut's nationality\r\nastro.nationality = \"USA\"\r\n\r\n```\r\n`profile_image`\r\nRetrieves and Set the astronaut's profile image url.\r\n```python\r\n# Get astronaut's profile image url\r\nprofile_image = astro.profile_image\r\n# Set astronaut's profile image url\r\nastro.profile_image = \"https://www.example.com/images/j_smith_astro.jpg\"\r\n\r\n```\r\n`profile_image_thumbnail`\r\nRetrieves and Set the astronaut's profile image thumbnail url.\r\n```python\r\n# Get astronaut's profile image thumbnail url\r\nprofile_image_thumbnail = astro.profile_image_thumbnail\r\n# Set astronaut's profile image thumbnail url\r\nastro.profile_image_thumbnail = \"https://www.example.com/images/j_smith_astro_thumbnail.jpg\"\r\n\r\n```\r\n`show_basic_info`\r\nRetrieves the astronaut's basic information.\r\n```python\r\n# Get astronaut's basic information\r\nbasic_info = astro.show_basic_info\r\n\r\n```\r\n`status_name`\r\nRetrieves and Set the astronaut's status name.\r\n```python\r\n# Get astronaut's status name\r\nstatus_name = astro.status_name\r\n# Set astronaut's status name\r\nastro.status_name = \"Active\"\r\n\r\n```\r\n`twitter`\r\nRetrieves and Set the astronaut's twitter url.\r\n```python\r\n# Get astronaut's twitter url\r\ntwitter = astro.twitter\r\n# Set astronaut's twitter handle\r\nastro.twitter = \"https://twitter.com/j_smith_astro\"\r\n\r\n```\r\n`type_name`\r\nRetrieves and Set the astronaut's type name.\r\n```python\r\n# Get astronaut's type name\r\ntype_name = astro.type_name\r\n# Set astronaut's type name\r\nastro.type_name = \"Government\"\r\n\r\n```\r\n`wiki`\r\nRetrieves and Set the astronaut's wiki page url.\r\n```python\r\n# Get astronaut's wiki page url\r\nwiki = astro.wiki\r\n# Set astronaut's wiki page url\r\nastro.wiki = \"https://en.wikipedia.org/wiki/John_Smith_(astronaut)\"\r\n\r\n```\r\n## Usage and methods for Launcher Objects\r\n### Initialize Launcher Object\r\n* From Database:\r\n```python\r\n# Initialize the SpaceAPI client\r\napi = SpaceApi()\r\n\r\n# Find astronaut by name\r\nlauncher = api.find_launcher_by('full_name', 'Atlas V')\r\n```\r\n* Manually\r\n```python\r\nfrom space_py import Launcher\r\nlauncher = Launcher({\"flight_proven\": flight_proven, \"serial_number\": serial_number, \"status\": status,\r\n                     \"details\": details, \"image_url\": image_url, \"flights\": flights,\r\n                     \"last_launch_date\": last_launch_date, \"first_launch_date\": first_launch_date,\r\n                     \"launcher_config_full_name\": launcher_config_full_name})\r\n```\r\n* The methods `jsonify` and `show_basic_info` are similar to the Astronaut's ones.\r\n* All these following methods are both Getters and Setters similarly to the Astronaut's ones:\r\n```python\r\n[launcher.description, launcher.first_launch, launcher.flights_count, launcher.full_name, launcher.is_flight_proven, \r\n launcher.last_launch, launcher.launcher_image, launcher.serial_n, launcher.status]\r\n```\r\n## Usage and methods for Launch Objects\r\n### Initialize Launch Object\r\n* From Database:\r\n```python\r\n# Initialize the SpaceAPI client\r\napi = SpaceApi()\r\n\r\n# Find astronaut by name\r\nlaunch = api.find_launch_by('name', 'Atlas V')\r\n```\r\n* Manually\r\n```python\r\nfrom space_py import Launch\r\nlaunch = Launch({\"name\": name, \"net\": net, \"window_start\": window_start,\r\n                     \"window_end\": window_end, \"failreason\": fail_reason, \"image\": image,\r\n                     \"infographic\": infographic, \"orbital_launch_attempt_count\": orbital_launch_attempt_count,\r\n                     \"orbital_launch_attempt_count_year\": orbital_launch_attempt_count_year,\r\n                     \"location_launch_attempt_count\": location_launch_attempt_count,\r\n                     \"location_launch_attempt_count_year\": location_launch_attempt_count_year,\r\n                     \"pad_launch_attempt_count\": pad_launch_attempt_count,\r\n                     \"pad_launch_attempt_count_year\": pad_launch_attempt_count_year,\r\n                     \"agency_launch_attempt_count\": agency_launch_attempt_count,\r\n                     \"agency_launch_attempt_count_year\": agency_launch_attempt_count_year,\r\n                     \"status_name\": status_name, \"launch_service_provider_name\": launch_service_provider_name,\r\n                     \"launch_service_provider_type\": launch_service_provider_type, \"rocket_id\": rocket_id,\r\n                     \"rocket_configuration_full_name\": rocket_config_full_name,\r\n                     \"mission_name\": mission_name, \"mission_description\": mission_description,\r\n                     \"mission_type\": mission_type, \"mission_orbit_name\": mission_orbit_name,\r\n                     \"pad_wiki_url\": pad_wiki_url, \"pad_longitude\": pad_longitude,\r\n                     \"pad_latitude\": pad_latitude, \"pad_location_name\": pad_location_name,\r\n                     \"pad_location_country_code\": pad_location_country_code})\r\n```\r\n* The methods `jsonify` and `show_basic_info` are similar to the Astronaut's ones.\r\n* All these methods are both Getters and Setters similarly to the Astronaut's ones:\r\n```python\r\n[launch.agency_launch_attempt_count, launch.agency_launch_attempt_count_year, launch.fail_reason, launch.image, \r\n launch.infographic, launch.jsonify, launch.launch_service_provider_name, launch.launch_service_provider_type, \r\n launch.location_launch_attempt_count, launch.location_launch_attempt_count_year, launch.mission_description, \r\n launch.mission_name, launch.mission_orbit_name, launch.mission_type, launch.name, launch.net, \r\n launch.orbital_launch_attempt_count, launch.orbital_launch_attempt_count_year, launch.pad_latitude, \r\n launch.pad_launch_attempt_count, launch.pad_launch_attempt_count_year, launch.pad_location_country_code, \r\n launch.pad_location_name, launch.pad_longitude, launch.pad_wiki_url, launch.rocket_config_full_name, launch.rocket_id, \r\n launch.show_basic_info, launch.status_name, launch.window_end, launch.window_start]\r\n```\r\n\r\n## Usage and methods for SpaceApi Objects\r\n###Populate Astronaut Launch and Launcher with SpaceApi\r\n* Instead of Initializing manually Astronaut, Launch or Launcher Objects, we can use SpaceApi `populate` methods.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nastro = api.populate_astro(name: str, birth: str, death: str, nationality: str, description: str, flights: str,\r\n                            landings: str, last_fl: str, agency_acr: str, twitter: str = \"None\", insta: str = \"None\",\r\n                            wiki: str = \"None\", profile_img: str = \"None\", profile_img_thmb: str = \"None\",\r\n                            first_fl: str = \"None\",\r\n                            status: str = \"None\", enroll: str = \"None\", agency: str = \"None\", agency_type: str = \"None\",\r\n                            agency_countries: str = \"None\", agency_logo: str = \"None\")\r\n\r\nlaunch = api.populate_launch(name: str, net: str, status_name: str, launch_service_provider_name: str,\r\n                            rocket_config_full_name: str,\r\n                            mission_description: str, pad_location_name: str,\r\n                            window_start: str = \"None\", window_end: str = \"None\", fail_reason: str = \"None\",\r\n                            image: str = \"None\",\r\n                            infographic: str = \"None\", orbital_launch_attempt_count: str = \"None\",\r\n                            orbital_launch_attempt_count_year: str = \"None\",\r\n                            location_launch_attempt_count: str = \"None\", location_launch_attempt_count_year: str = \"None\",\r\n                            pad_launch_attempt_count: str = \"None\", pad_launch_attempt_count_year: str = \"None\",\r\n                            agency_launch_attempt_count: str = \"None\", agency_launch_attempt_count_year: str = \"None\",\r\n                            launch_service_provider_type: str = \"None\", rocket_id: str = \"None\",\r\n                            mission_name: str = \"None\", mission_type: str = \"None\",\r\n                            mission_orbit_name: str = \"None\", pad_wiki_url: str = \"None\", pad_longitude: str = \"None\",\r\n                            pad_latitude: str = \"None\",\r\n                            pad_location_country_code: str = \"None\")\r\n\r\nlauncher = api.populate_launcher(launcher_config_full_name: str, serial_number: str, status: str, details: str, flights: str,\r\n                                image_url: str = \"None\",\r\n                                last_launch_date: str = \"None\", first_launch_date: str = \"None\",\r\n                                flight_proven: str = \"False\")\r\n```\r\n### Url methods\r\n* `default_url`: Returns the default API URL.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\ndefault_url = api.default_url\r\n```\r\n\r\n* `url`: Returns the current API URL and can permit you to change it.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nprint(api.url)\r\n# https://current-api-url.com\r\n\r\nnew_url = 'https://new-api-url.com'\r\napi.url = new_url\r\nprint(api.url)\r\n# https://new-api-url.com\r\n```\r\n### Add methods\r\n* `add_astro(astro: Astronaut)`: Adds a new astronaut to the API. The `astro` parameter should be an Astronaut object containing the astronaut's information.\r\n```python\r\nfrom space_py import SpaceApi, Astronaut\r\napi = SpaceApi()\r\nnew_astro = Astronaut({\"name\": name, \"date_of_birth\": birth, \"date_of_death\": death, \"nationality\": nationality,\r\n                     \"bio\": description,\r\n                     \"twitter\": twitter, \"instagram\": insta, \"wiki\": wiki,\r\n                     \"profile_image\": profile_img,\r\n                     \"profile_image_thumbnail\": profile_img_thmb,\r\n                     \"flights_count\": flights, \"landings_count\": landings, \"last_flight\": last_fl,\r\n                     \"first_flight\": first_fl, \"status_name\": status, \"type_name\": enroll,\r\n                     \"agency_name\": agency, \"agency_type\": agency_type,\r\n                     \"agency_country_code\": agency_countries, \"agency_abbrev\": agency_acr,\r\n                     \"agency_logo_url\": agency_logo})\r\napi.add_astro(new_astro)\r\n   ```\r\n* `add_launch(launch: Launch)`: Adds a new launch to the API. The `launch` parameter should be a Launch Object containing the launch's information.\r\n```python\r\nfrom space_py import SpaceApi, Launch\r\napi = SpaceApi()\r\nnew_astro = Launch({\"name\": name, \"net\": net, \"window_start\": window_start,\r\n                     \"window_end\": window_end, \"failreason\": fail_reason, \"image\": image,\r\n                     \"infographic\": infographic,\r\n                     \"orbital_launch_attempt_count\": orbital_launch_attempt_count,\r\n                     \"orbital_launch_attempt_count_year\": orbital_launch_attempt_count_year,\r\n                     \"location_launch_attempt_count\": location_launch_attempt_count,\r\n                     \"location_launch_attempt_count_year\": location_launch_attempt_count_year,\r\n                     \"pad_launch_attempt_count\": pad_launch_attempt_count,\r\n                     \"pad_launch_attempt_count_year\": pad_launch_attempt_count_year,\r\n                     \"agency_launch_attempt_count\": agency_launch_attempt_count,\r\n                     \"agency_launch_attempt_count_year\": agency_launch_attempt_count_year,\r\n                     \"status_name\": status_name,\r\n                     \"launch_service_provider_name\": launch_service_provider_name,\r\n                     \"launch_service_provider_type\": launch_service_provider_type, \"rocket_id\": rocket_id,\r\n                     \"rocket_configuration_full_name\": rocket_config_full_name,\r\n                     \"mission_name\": mission_name, \"mission_description\": mission_description,\r\n                     \"mission_type\": mission_type, \"mission_orbit_name\": mission_orbit_name,\r\n                     \"pad_wiki_url\": pad_wiki_url, \"pad_longitude\": pad_longitude,\r\n                     \"pad_latitude\": pad_latitude, \"pad_location_name\": pad_location_name,\r\n                     \"pad_location_country_code\": pad_location_country_code})\r\napi.add_launch(new_astro)\r\n   ```\r\n* `add_launcher(launcher: Launcher)`: Adds a new launcher to the API. The `launcher` parameter should be a Launch Object containing the launcher's information.\r\n```python\r\nfrom space_py import SpaceApi, Launcher\r\napi = SpaceApi()\r\nnew_astro = Launcher({\"flight_proven\": flight_proven, \"serial_number\": serial_number, \"status\": status,\r\n                     \"details\": details, \"image_url\": image_url, \"flights\": flights,\r\n                     \"last_launch_date\": last_launch_date, \"first_launch_date\": first_launch_date,\r\n                     \"launcher_config_full_name\": launcher_config_full_name})\r\napi.add_launcher(new_astro)\r\n   ```\r\n### Delete methods\r\n* `delete_astro_by(field: str, value: str)`: Deletes an astronaut from the API based on the specified field and value.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\napi.delete_astro_by('name', 'John Smith')\r\n```\r\n* `delete_launch_by(field: str, value: str)`: Deletes a launch from the API based on the specified field and value.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\napi.delete_launch_by('name', 'Falcon 9')\r\n```\r\n* `delete_launcher_by(field: str, value: str)`: Deletes a launcher from the API based on the specified field and value.\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\napi.delete_launcher_by('full_name', 'Atlas V')\r\n```\r\n### Find methods\r\n#### Used to find an entry with exact match\r\n* `find_astro_by(field: str, value: str)`: Retrieves an astronaut from the API based on the specified field and value. If astronaut is found, `astro` is an Astronaut Object, otherwise it is a string like: `'entry non found'`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nastro = api.find_astro_by('name', 'John Smith')\r\n```\r\n* `find_launch_by(field: str, value: str)`: Retrieves a launch from the API based on the specified field and value. If launch is found, `launch` is a Launch Object, otherwise it is a string like: `'entry non found'`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nlaunch = api.find_launch_by('name', 'Falcon 9')\r\n```\r\n* `find_launcher_by(field: str, value: str)`: Retrieves a launcher from the API based on the specified field and value. If launcher is found, `launcher` is a Launcher Object, otherwise it is a string like: `'entry non found'`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nlauncher = api.find_launcher_by('full_name', 'Atlas V')\r\n```\r\n### Search methods\r\n#### Used to search for and entry that contains `value` in the `field`\r\n* `search_astro_by(field: str, value: str)`: Retrieves an astronaut from the API based on the specified field and value. If astronaut is found, `astro` is a dictionary containing Astronaut Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nastro = api.search_astro_by('name', 'John Smith')\r\n```\r\n* `search_launch_by(field: str, value: str)`: Retrieves a launch from the API based on the specified field and value. If launch is found, `launch` is a dictionary containing Launch Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nlaunch = api.search_launch_by('name', 'Falcon 9')\r\n```\r\n* `search_launcher_by(field: str, value: str)`: Retrieves a launcher from the API based on the specified field and value. If launcher is found, `launcher` is a dictionary containing Launcher Objects, otherwise it is a dictionary like: `{'error':'entry non found'}`\r\n```python\r\nfrom space_py import SpaceApi\r\napi = SpaceApi()\r\nlauncher = api.search_launcher_by('full_name', 'Atlas V')\r\n```\r\n### Update methods\r\n#### Used to overwrite an entry that exactly mach `value` in `field`\r\n* `update_astro_by(field: str, value: str, update: Astronaut)`: Updates an astronaut record in the API based on the specified field and value. The `astro` parameter should be an Astronaut object containing the astronaut's information.\r\n```python\r\nfrom space_py import SpaceApi, Astronaut\r\napi = SpaceApi()\r\nupdated_astro = Astronaut({\"name\": name, \"date_of_birth\": birth, \"date_of_death\": death, \"nationality\": nationality,\r\n                     \"bio\": description,\r\n                     \"twitter\": twitter, \"instagram\": insta, \"wiki\": wiki,\r\n                     \"profile_image\": profile_img,\r\n                     \"profile_image_thumbnail\": profile_img_thmb,\r\n                     \"flights_count\": flights, \"landings_count\": landings, \"last_flight\": last_fl,\r\n                     \"first_flight\": first_fl, \"status_name\": status, \"type_name\": enroll,\r\n                     \"agency_name\": agency, \"agency_type\": agency_type,\r\n                     \"agency_country_code\": agency_countries, \"agency_abbrev\": agency_acr,\r\n                     \"agency_logo_url\": agency_logo})\r\napi.update_astro_by('name', 'John Smith', updated_astro)\r\n   ```\r\n* `update_launch_by(field: str, value: str, update: Launch)`: Updates a launch record in the API based on the specified field and value. The `launch` parameter should be a Launch Object containing the launch's information.\r\n```python\r\nfrom space_py import SpaceApi, Launch\r\napi = SpaceApi()\r\nupdated_astro = Launch({\"name\": name, \"net\": net, \"window_start\": window_start,\r\n                     \"window_end\": window_end, \"failreason\": fail_reason, \"image\": image,\r\n                     \"infographic\": infographic,\r\n                     \"orbital_launch_attempt_count\": orbital_launch_attempt_count,\r\n                     \"orbital_launch_attempt_count_year\": orbital_launch_attempt_count_year,\r\n                     \"location_launch_attempt_count\": location_launch_attempt_count,\r\n                     \"location_launch_attempt_count_year\": location_launch_attempt_count_year,\r\n                     \"pad_launch_attempt_count\": pad_launch_attempt_count,\r\n                     \"pad_launch_attempt_count_year\": pad_launch_attempt_count_year,\r\n                     \"agency_launch_attempt_count\": agency_launch_attempt_count,\r\n                     \"agency_launch_attempt_count_year\": agency_launch_attempt_count_year,\r\n                     \"status_name\": status_name,\r\n                     \"launch_service_provider_name\": launch_service_provider_name,\r\n                     \"launch_service_provider_type\": launch_service_provider_type, \"rocket_id\": rocket_id,\r\n                     \"rocket_configuration_full_name\": rocket_config_full_name,\r\n                     \"mission_name\": mission_name, \"mission_description\": mission_description,\r\n                     \"mission_type\": mission_type, \"mission_orbit_name\": mission_orbit_name,\r\n                     \"pad_wiki_url\": pad_wiki_url, \"pad_longitude\": pad_longitude,\r\n                     \"pad_latitude\": pad_latitude, \"pad_location_name\": pad_location_name,\r\n                     \"pad_location_country_code\": pad_location_country_code})\r\napi.update_launch_by('name', 'Falcon 9', updated_astro)\r\n   ```\r\n* `update_launcher_by(field: str, value: str, update: Launcher)`: Updates a launcher record in the API based on the specified field and value. The `launcher` parameter should be a Launch Object containing the launcher's information.\r\n```python\r\nfrom space_py import SpaceApi, Launcher\r\napi = SpaceApi()\r\nupdated_astro = Launcher({\"flight_proven\": flight_proven, \"serial_number\": serial_number, \"status\": status,\r\n                     \"details\": details, \"image_url\": image_url, \"flights\": flights,\r\n                     \"last_launch_date\": last_launch_date, \"first_launch_date\": first_launch_date,\r\n                     \"launcher_config_full_name\": launcher_config_full_name})\r\napi.update_launcher_by('full_name', 'Atlas V', updated_astro)\r\n```\r\n## Contributing\r\n\r\nIf you would like to contribute to the development of SpaceApi, please feel free to submit a pull request.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A basic space api",
    "version": "0.1.0",
    "split_keywords": [
        "python",
        "api",
        "space"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9a55433c3a6177ff83254a570df18bbbd40dfb3f05b5c78898741bae31ab7ef6",
                "md5": "272168d8ee7a24985b65e2e3c89eda74",
                "sha256": "f8d4305d54b8565b3c2f323f01a23ff697f105f6d5b3940ab5f65154b7dc9434"
            },
            "downloads": -1,
            "filename": "rocket_space_stuff-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "272168d8ee7a24985b65e2e3c89eda74",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 10517,
            "upload_time": "2023-01-15T17:03:37",
            "upload_time_iso_8601": "2023-01-15T17:03:37.380322Z",
            "url": "https://files.pythonhosted.org/packages/9a/55/433c3a6177ff83254a570df18bbbd40dfb3f05b5c78898741bae31ab7ef6/rocket_space_stuff-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9783b274691caa034a0a2b09921ab1e0906d9b21abcbb1abe777af60430b6ecf",
                "md5": "0f9c7f1a0068264c5a1a5f1e51f90cb4",
                "sha256": "ca77079a3d254e4aa531baf71f66a075f17363918821d2529094d66ca9d56c9e"
            },
            "downloads": -1,
            "filename": "rocket-space-stuff-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "0f9c7f1a0068264c5a1a5f1e51f90cb4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 11224,
            "upload_time": "2023-01-15T17:03:39",
            "upload_time_iso_8601": "2023-01-15T17:03:39.216906Z",
            "url": "https://files.pythonhosted.org/packages/97/83/b274691caa034a0a2b09921ab1e0906d9b21abcbb1abe777af60430b6ecf/rocket-space-stuff-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-15 17:03:39",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "rocket-space-stuff"
}
        
Elapsed time: 0.29919s